我正在尝试查找字符串中的变量,例如
找不到“%0”。 %1 请重试%2
我需要知道每个变量如何结束(空格、句点、行尾),因为我将检查该字符串的翻译版本中是否存在相同的变量。文本来自 CSV,字符串不以换行符结尾。
我能够捕获除字符串末尾的所有内容之外的所有内容:
reg =/[%@!][^\s]+[\s\.\z$]+/
我认为 $
或 \z
应该匹配行尾,但这似乎不起作用。在上述情况下如何捕获%2? (同样,末尾没有换行符)
最佳答案
$
匹配行尾,但在像这样的括号内使用时则不然。编写 [$]
就是查找普通美元符号字符“$”的方式。
如果您要搜索的字符串与上面列出的字符串完全相同,请尝试
reg = /^"(.*)" can not be found[.] (.*) Please try again (.*)$/
error_string =~ reg
您的三个匹配结果将存储在特殊变量 $1
、$2
和 $3
中。
关于Ruby 正则表达式行尾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2345411/