How to compare 2 string variables? (if nameA == nameB)

I searched the forum for compare strings and compare variables and couldn’t find a way to do it.

Thank you.

bonus question: how can you also do (if clipboard_1 == clipboard_2) ?

Use "If then else" actions, like these:

4 Likes

Thank you Dan that worked perfectly!

:grin:

1 Like

Hi Dan,

The attached action creates variables by saving names, It can create the following variables
Market Name BTC XRP
Market Name ETH XRP
Market Name USDT XRP

I want to find all variables where it has created more than one variable using the same last word
(in this case its XRP)

therefore the result would be 3 variables
Market Name BTC XRP
Market Name ETH XRP
Market Name USDT XRP

I need the results to later do a set of KM actions, as there are 3 results I would need to do 6 calculations if there was 2 results such as

Market Name USDT XRP
Market Name ETH XRP

would I then do 2 calculations.

There will only ever be 2 or 3 results.

I haven't tested this since I don't have the data on hand, but if I've puzzled out the logic correctly, this should (theoretically) end with a variable called LocalAllMatchVariables that contains every variable that ends with the same word, which you could then use with another For Each loop for the calculations.

For Each Variable.kmactions (4.4 KB)

1 Like

Hi gglick, I can’t seem to open it. currently using KM Version v8.0.4d1

Hmm, that's strange. The only thing I can think of is that I'm using KM 8.0.3, but that doesn't seem like it should prevent it from opening. Here it is in full macro form, maybe that will works better:

For Each Variable.kmmacros (6.1 KB)

Many thanks for this macro, please could you explain what is ‘LocalVariable’?

You’re welcome. I hope it works for you. The “Local” prefix is new to KM8 and ensures that the variables prefixes are created and erased automatically every time the macro they are used in is run. In this case, the For Each loops are testing every variable you have, so “Variable” seemed like the most appropriate generic name. My understanding is when the macro is run, LocalVariable loads the name of every variable on your system, then it itself is deleted once the macro is finished.

See Local Variables (Wiki).

1 Like

Hey again. I don't know if you've tried the macro I posted a few days ago yet, but if you have, you'll have discovered that not only does it take a long time to complete, but it doesn't even produce the results you were looking for. Fortunately, after I saw the other threads related to this line of questioning and got ahold of a sample of the data for myself, I was able to come up with something that I've verified works as expected. Assuming you only want variables starting with "Market Name", this new macro produces the following kind of list in a much more reasonable amount of time (around 5 seconds on my machine):

[details=Click Here to See Macro Results]> Market Name BTC 1ST

Market Name ETH 1ST

Market Name BTC ADT
Market Name ETH ADT

Market Name BTC ADX
Market Name ETH ADX

Market Name BTC ANT
Market Name ETH ANT

Market Name BTC ARK
Market Name BTC QWARK

Market Name BTC AUR
Market Name BTC XAUR

Market Name BTC BAT
Market Name ETH BAT

Market Name BTC BCC
Market Name ETH BCC
Market Name USDT BCC

Market Name BTC BNT
Market Name ETH BNT

Market Name BTC BTS
Market Name ETH BTS

Market Name BTC CFI
Market Name ETH CFI

Market Name BTC CRB
Market Name ETH CRB

Market Name BTC CVC
Market Name ETH CVC

Market Name BTC DASH
Market Name ETH DASH
Market Name USDT DASH

Market Name BTC DGB
Market Name ETH DGB

Market Name BTC DGD
Market Name ETH DGD

Market Name BTC DNT
Market Name ETH DNT

Market Name BTC ETC
Market Name ETH ETC
Market Name USDT ETC

Market Name BTC ETH
Market Name USDT ETH

Market Name BTC FCT
Market Name ETH FCT

Market Name BTC FUN
Market Name ETH FUN

Market Name BTC GNO
Market Name ETH GNO

Market Name BTC GNT
Market Name ETH GNT

Market Name BTC AGRS
Market Name BTC GRS

Market Name BTC GUP
Market Name ETH GUP

Market Name BTC HMQ
Market Name ETH HMQ

Market Name BTC LGD
Market Name ETH LGD

Market Name BTC LTC
Market Name ETH LTC
Market Name USDT LTC

Market Name BTC LUN
Market Name ETH LUN

Market Name BTC MANA
Market Name ETH MANA

Market Name BTC MCO
Market Name ETH MCO

Market Name BTC MTL
Market Name ETH MTL

Market Name BTC MYST
Market Name ETH MYST

Market Name BTC NEO
Market Name ETH NEO
Market Name USDT NEO

Market Name BTC NMR
Market Name ETH NMR

Market Name BTC OMG
Market Name ETH OMG
Market Name USDT OMG

Market Name BTC PAY
Market Name ETH PAY

Market Name BTC PTOY
Market Name ETH PTOY

Market Name BTC QRL
Market Name ETH QRL

Market Name BTC QTUM
Market Name ETH QTUM

Market Name BTC REP
Market Name ETH REP

Market Name BTC RLC
Market Name ETH RLC

Market Name BTC SALT
Market Name ETH SALT

Market Name BTC SC
Market Name ETH SC

Market Name BTC SNGLS
Market Name ETH SNGLS

Market Name BTC SNT
Market Name ETH SNT

Market Name BTC STORJ
Market Name ETH STORJ

Market Name BTC STRAT
Market Name ETH STRAT

Market Name BTC TIME
Market Name ETH TIME

Market Name BTC TIX
Market Name ETH TIX

Market Name BTC TKN
Market Name ETH TKN

Market Name BTC TRST
Market Name ETH TRST

Market Name BTC WAVES
Market Name ETH WAVES

Market Name BTC WINGS
Market Name ETH WINGS

Market Name BTC XEM
Market Name ETH XEM

Market Name BTC XLM
Market Name ETH XLM

Market Name BTC XMR
Market Name ETH XMR
Market Name USDT XMR

Market Name BTC XRP
Market Name ETH XRP
Market Name USDT XRP

Market Name BTC ZEC
Market Name ETH ZEC
Market Name USDT ZEC

Market Name BTC 1ST
Market Name ETH 1ST

Market Name BTC ADT
Market Name ETH ADT

Market Name BTC ADX
Market Name ETH ADX

Market Name BTC ANT
Market Name ETH ANT

Market Name BTC BAT
Market Name ETH BAT

Market Name BTC BCC
Market Name ETH BCC
Market Name USDT BCC

Market Name BTC BNT
Market Name ETH BNT

Market Name BTC BTS
Market Name ETH BTS

Market Name BTC CFI
Market Name ETH CFI

Market Name BTC CRB
Market Name ETH CRB

Market Name BTC CVC
Market Name ETH CVC

Market Name BTC DASH
Market Name ETH DASH
Market Name USDT DASH

Market Name BTC DGB
Market Name ETH DGB

Market Name BTC DGD
Market Name ETH DGD

Market Name BTC DNT
Market Name ETH DNT

Market Name BTC ETC
Market Name ETH ETC
Market Name USDT ETC

Market Name BTC FCT
Market Name ETH FCT

Market Name BTC FUN
Market Name ETH FUN

Market Name BTC GNO
Market Name ETH GNO

Market Name BTC GNT
Market Name ETH GNT

Market Name BTC GUP
Market Name ETH GUP

Market Name BTC HMQ
Market Name ETH HMQ

Market Name BTC LGD
Market Name ETH LGD

Market Name BTC LTC
Market Name ETH LTC
Market Name USDT LTC

Market Name BTC LUN
Market Name ETH LUN

Market Name BTC MANA
Market Name ETH MANA

Market Name BTC MCO
Market Name ETH MCO

Market Name BTC MTL
Market Name ETH MTL

Market Name BTC MYST
Market Name ETH MYST

Market Name BTC NEO
Market Name ETH NEO
Market Name USDT NEO

Market Name BTC NMR
Market Name ETH NMR

Market Name BTC OMG
Market Name ETH OMG
Market Name USDT OMG

Market Name BTC PAY
Market Name ETH PAY

Market Name BTC PTOY
Market Name ETH PTOY

Market Name BTC QRL
Market Name ETH QRL

Market Name BTC QTUM
Market Name ETH QTUM

Market Name BTC REP
Market Name ETH REP

Market Name BTC RLC
Market Name ETH RLC

Market Name BTC SALT
Market Name ETH SALT

Market Name BTC SC
Market Name ETH SC

Market Name BTC SNGLS
Market Name ETH SNGLS

Market Name BTC SNT
Market Name ETH SNT

Market Name BTC STORJ
Market Name ETH STORJ

Market Name BTC STRAT
Market Name ETH STRAT

Market Name BTC TIME
Market Name ETH TIME

Market Name BTC TIX
Market Name ETH TIX

Market Name BTC TKN
Market Name ETH TKN

Market Name BTC TRST
Market Name ETH TRST

Market Name BTC WAVES
Market Name ETH WAVES

Market Name BTC WINGS
Market Name ETH WINGS

Market Name BTC XEM
Market Name ETH XEM

Market Name BTC XLM
Market Name ETH XLM

Market Name BTC XMR
Market Name ETH XMR
Market Name USDT XMR

Market Name BTC XRP
Market Name ETH XRP
Market Name USDT XRP

Market Name BTC ZEC
Market Name ETH ZEC
Market Name USDT ZEC

Market Name BTC BCC
Market Name ETH BCC
Market Name USDT BCC

Market Name BTC DASH
Market Name ETH DASH
Market Name USDT DASH

Market Name BTC ETC
Market Name ETH ETC
Market Name USDT ETC

Market Name BTC ETH
Market Name USDT ETH

Market Name BTC LTC
Market Name ETH LTC
Market Name USDT LTC

Market Name BTC NEO
Market Name ETH NEO
Market Name USDT NEO

Market Name BTC OMG
Market Name ETH OMG
Market Name USDT OMG

Market Name BTC XMR
Market Name ETH XMR
Market Name USDT XMR

Market Name BTC XRP
Market Name ETH XRP
Market Name USDT XRP

Market Name BTC ZEC
Market Name ETH ZEC
Market Name USDT ZEC
[/details]

With the disclaimer that you really should probably follow @Tom and @JMichaelTX's advice about using something other than KM for large JSON-based data sets like this, if you're set on using KM for this task, this new macro should get you much closer than my last one did:

Find Variables with Matching End Words.kmmacros (8.4 KB)

1 Like