Regex查找单词中的所有字符是否都是相同的特定字符

Regex查找单词中的所有字符是否都是相同的特定字符,regex,Regex,我有一组单词一个接一个地出现,像aa、@、??、~~~、?~等等 我需要一个正则表达式来确定这些单词中是否有只包含?或者只有~。 在上述输入示例中???和~~~应该匹配,但不能匹配其他 我分别尝试了^[\s?]*$和^[\s~]*$,效果很好,我正在尝试将它们结合起来。 ^[\s?| | ~]*$不起作用,因为它还将?~识别为有效 有什么帮助吗?您希望匹配以任何数字的波浪线或问号开头和结尾的行。那就是^\~\\?\*$。组成组的括号和执行“或”的竖条需要反斜杠转义。要匹配以任何数字的波浪线或问号

我有一组单词一个接一个地出现,像aa、@、??、~~~、?~等等

我需要一个正则表达式来确定这些单词中是否有只包含?或者只有~。 在上述输入示例中???和~~~应该匹配,但不能匹配其他

我分别尝试了^[\s?]*$和^[\s~]*$,效果很好,我正在尝试将它们结合起来。 ^[\s?| | ~]*$不起作用,因为它还将?~识别为有效


有什么帮助吗?

您希望匹配以任何数字的波浪线或问号开头和结尾的行。那就是^\~\\?\*$。组成组的括号和执行“或”的竖条需要反斜杠转义。

要匹配以任何数字的波浪线或问号开头和结尾的行。那就是^\~\\?\*$。组成组的括号和执行“或”的竖条需要反斜杠转义。

您可以使用此正则表达式,它查找以~或?开头的字符串,然后断言字符串中的每个其他字符与使用反引用的第一个字符相同\1:


您可以使用此正则表达式,它查找以~或?开头的字符串,然后断言字符串中的每个其他字符都与使用反向引用的第一个字符相同\1:

你需要使用它来达到你想要的结果

如果你只想要~或者?使用

如果您想要任何重复的模式,请使用

^(.)\1+$
解释。或者[~?]捕捉第一个角色。 然后,\1+检查第一个字符,一次或多次反向引用,以获得所需结果

如果你只想要~或者?使用

如果您想要任何重复的模式,请使用

^(.)\1+$
解释。或者[~?]捕捉第一个角色。
然后,\1+检查第一个字符,一次或多次反向引用

我想匹配只包含波浪线或只包含问号的行-???或者~~~。不是吗~gg~etcIndeed,我看到你把问题编辑成需要一个星号,我已经添加了星号。我想匹配一行只包含波浪线或只包含问号-???或者~~~。不是吗~gg~etcIndeed,我看到你把这个问题编辑成需要一个星号,我已经加上了。你为什么想要一个正则表达式?。当然,更简单的方法是进行更换,然后检查长度是否合适zero@freeflow这确实是一个很好的方法:为什么你想要一个正则表达式?。当然,更简单的方法是进行更换,然后检查长度是否合适zero@freeflow这当然是一个好办法:
^(.)\1+$