Regex 如何匹配字符,除非它是带有正则表达式的特定字符串的一部分

Regex 如何匹配字符,除非它是带有正则表达式的特定字符串的一部分,regex,Regex,我不知道如何解释,所以举个例子: xx_xx -> matches because of the underscore -> .*_.* xx_t_xx -> dont want this to match as _t_ is an exception I want to ignore xx_t_xx_xx -> matches as there is an underscore that is not part of the string _t_ xx_t_xx_

我不知道如何解释,所以举个例子:

xx_xx -> matches because of the underscore -> .*_.*

xx_t_xx -> dont want this to match as _t_ is an exception I want to ignore

xx_t_xx_xx -> matches as there is an underscore that is not part of the string _t_

xx_t_xx_t_xx -> no match

_t_ -> no match

_ -> match

_t__ -> match
所以匹配下划线,除非它是字符串的一部分

这可以用正则表达式完成吗?

好的

使用以下命令:
^[a-z]+_[a-z]+$

这将只匹配一个下划线

i、 e它将匹配
xx\u xx
,但不匹配
xx\u t\u xx

在控制台中尝试以下操作:

var str = "xx_xx";
var res = /^[a-z]+_[a-z]+$/.test(str);
console.log(res);
是的,还有一件事<代码>学习正则表达式非常有用。你想从regexone开始,好吗

使用以下命令:
^[a-z]+_[a-z]+$

这将只匹配一个下划线

i、 e它将匹配
xx\u xx
,但不匹配
xx\u t\u xx

在控制台中尝试以下操作:

var str = "xx_xx";
var res = /^[a-z]+_[a-z]+$/.test(str);
console.log(res);

是的,还有一件事<代码>学习正则表达式非常有用。您将要从regexone开始

最后完成,检查您的所有条件。很好 试试这个,它可以接受任何单个字符。 这肯定对你有用

^([^_]|(_t_))*_([^_]|(_t_))*$

最后,检查您的所有条件。很好 试试这个,它可以接受任何单个字符。 这肯定对你有用

^([^_]|(_t_))*_([^_]|(_t_))*$

如果您的语言支持负向后看和负向前看,您可以使用
(?regex。基本上,您搜索的
\uu
前面不带
\ut
,后面不带
t

如果您的语言支持负向后看和负向前看,您可以使用
(?regex.基本上你搜索的
\uu
前面没有
\u t
,后面也没有
t

你现在使用的regex是什么?是。*..*.*吗?我没有,我没能这样做,所以你想匹配下划线,除非它前面或后面有
t
?或者这只是一个例子吗?不,我想排除e该特定字符串
\u t\u t\u
是否匹配?您现在使用的正则表达式是什么?是。*.*.*吗?我没有,我无法这样做,所以您希望匹配下划线,除非它前面或后面有
t
?或者这只是一个示例?不,我想排除该特定字符串
\u_匹配与否?如果有下划线和排除的文本,这不起作用,我编辑了我的问题以包括该示例。如果有下划线和排除的文本,这不起作用,我编辑了我的问题以包括该示例。这看起来很有希望,但不幸的是javascript不支持,但值得一提这看起来很有希望,但不幸的是javascript不支持,但值得一提