例如我有一个字符串
s = "start |foo bar|, middle, |reg ex| end"
我想改变方括号上的|
,得到
"start [foo bar], middle, [reg ex] end"
如何使用正则表达式实现它?
至少,我想捕获 |foo bar|
和 |reg ex|
,但我的方法:
/\|.+\|/
捕获|foo bar|,中间,|reg ex|
s.match(/\|.+\|/)[0] # => "|foo bar|, middle, |reg ex|"
最佳答案
尝试使正则表达式成为非贪婪的:
/\|.+?\|/
或
/\|[^|]+\|/
关于ruby - 如何更改字符串中的特殊符号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8485056/