Regex 正则表达式匹配“;不是两个字符的任何东西”;
这就是我想做的: 正文: -一是二+三+四+五-六七八九然后十一+十二十三 我想匹配:Regex 正则表达式匹配“;不是两个字符的任何东西”;,regex,pattern-matching,Regex,Pattern Matching,这就是我想做的: 正文: -一是二+三+四+五-六七八九然后十一+十二十三 我想匹配: -一种牙周炎 -两个 +三 +四 +五 -六七八 -九点接着十一点 +十三级 基本上,忽略单词中的匹配“-”,但如果单词中存在匹配“+”和“-” 这是我正在使用的正则表达式:/([-+][^+]+)/ 我想基本上做[^(+)&(-)]+ 或者,匹配任何不是“+”或“-”的项一个选项是按\+\B-拆分: 按空格(或任何非字母数字字符)后的每个+和-进行拆分 这意味着它在某些情况下不会被拆分,例如,+ab-c不会
或者,匹配任何不是“+”或“-”的项一个选项是按
\+\B-
拆分:
按空格(或任何非字母数字字符)后的每个+
和-
进行拆分
这意味着它在某些情况下不会被拆分,例如,+ab-c
不会被拆分
如果您确实希望匹配您的单词,并且在这种情况下希望拆分,您可以尝试:
[+-]([^\s+]*[^+-]*)
一个选项是按
\+\B-
拆分:
按空格(或任何非字母数字字符)后的每个+
和-
进行拆分
这意味着它在某些情况下不会被拆分,例如,+ab-c
不会被拆分
如果您确实希望匹配您的单词,并且在这种情况下希望拆分,您可以尝试:
[+-]([^\s+]*[^+-]*)
解决方案
([-+](?:[^ ][-]|[ ][^-+]|[^ +-])+)
解决方案
([-+](?:[^ ][-]|[ ][^-+]|[^ +-])+)
即使不是家庭作业,规则显然比“基本上忽略匹配+单词内”更复杂。你还没有充分地约束你的问题,所以我们可以从你的例子中猜出的任何规则都可能是错误的。我建议你坐下来确切地定义一下你的匹配规则。到那时,你甚至可能不再需要我们的帮助。不幸的是,它不是。。。我喜欢家庭作业……基本上,我想要中间的文本/数据。1在“+”和“-”之间,如果被字符包围,则“-”除外。“-”可以,即使不是家庭作业,规则显然比“基本上忽略匹配+单词内”更复杂。你还没有充分地约束你的问题,所以我们可以从你的例子中猜出的任何规则都可能是错误的。我建议你坐下来确切地定义一下你的匹配规则。到那时,你甚至可能不再需要我们的帮助。不幸的是,它不是。。。我喜欢家庭作业……基本上,我想要中间的文本/数据。1在“+”和“-”之间,如果被字符包围,则“-”除外。“-”是okIn,换句话说,使用交替运算符作为“逻辑门”。换句话说,使用交替运算符作为“逻辑门”。谢谢Kobi,但我希望匹配不拆分的单词。我在单词匹配和标志匹配方面遇到了问题。我现在知道答案了,不过还是要谢谢你!谢谢Kobi,但我想用不分裂的方式匹配单词。我在单词匹配和标志匹配方面遇到了问题。我现在知道答案了,不过还是要谢谢你!