这就是我想要做的事情:
文本: -one oneitis -two + three + four + five -six-seven-eight -nine then 11 + 12十三
我想要匹配:
基本上,忽略单词中的匹配' - ',但如果它们存在则匹配'+',并且' - '
这是我正在使用的正则表达式:/([ - +] [^ +] +)/
我想基本上做[^(+)&( - )] +
或者,匹配任何不是'+'和' - '< - 即(空格和减号)
有没有办法做到这一点?
提前致谢! (链接一些工具http://rubular.com/)
答案 0 :(得分:3)
答案 1 :(得分:1)
一种选择是按\+|\B-
分割:http://rubular.com/r/tC2zTWZI4v
每个+
和-
在空格(或任何非字母数字字符)之后的拆分。
这意味着它在某些情况下不会分裂,例如+a b-c
不会被拆分。
如果您确实想要匹配您的单词,并希望在这种情况下进行拆分,您可以尝试:
[+-]([^\s+]*[^+-]*)