/
\+ # match '+'
[ ]*9 # match zero or more spaces followed by '9'
[ ]*6 # match zero or more spaces followed by '6'
[ ]*6 # match zero or more spaces followed by '6'
| # or
[ ]* # match zero or more spaces
/x # invoke free-spacing regex definition mode
3条答案
按热度按时间ki1q1bka1#
用这种方式
输出
kzipqqlq2#
由于字符串不包含空格,因此无需删除它们
要删除前缀,可以使用
String#delete_prefix
:还有bang版本:
如果你的字符串包含白色空格,你可以先用
String#delete
删除它们,然后再用delete_prefix
:uurv41yg3#
人们可以写
Demo
我假设不匹配换行符,这就是为什么我选择匹配空格而不是空白字符(
\s
)。如果制表符也应该匹配,可以用[ \t]
或\p{Blank}
替换空格字符。正则表达式可以通过以 * 自由间距模式 * 编写来实现自文档化。
使用此模式时,必须保护表达式中的所有空格。我已经通过将每个空格封闭在一个字符类中来实现这一点,但也可以对每个空格字符进行转义(
\
)。