gra*_*aci 1 ruby regex arrays split
这更像是"我使用什么正则表达式"而不是语义问题.
我有以下字符串:
moneyString = "¥10,100 YEN,€100.00 EU,$100.00 US"
Run Code Online (Sandbox Code Playgroud)
我需要将它拆分为逗号.但是,我不希望将10,000日元中的逗号分成两个数组.
目前,如果我这样做 moneyString.split(',')
我得到:[¥10, 100 YEN, €100.00 EU, $100.00 US]作为不同的数组值.但我想要 :
[¥10100 YEN, €100.00 EU, $100.00 US]
有人能告诉我如何正确使用这个正则表达式吗?对不起,我是这个东西的新手.
您可以使用负向lookbehind拆分所有前面没有数字的逗号.
moneyString = "¥10,100 YEN,€100.00 EU,$100.00 US"
puts moneyString.split(/(?<!\d),/)
# ¥10,100 YEN
# €100.00 EU
# $100.00 US
Run Code Online (Sandbox Code Playgroud)