Regex 为什么这种比较会再次出现?(正则表达式)
我对第二个比较感到困惑。这不是意味着一个以[a-dXYZ]开头,以[a-dXYZ]结尾的字符串吗 还是说一个以[a-dXYZ]开头,以[a-dXYZ]结尾,长度为1的字符串?如果这是真的,使用^和$符号,如“^….$”(最左边和最右边)消除所有子字符串,并仅分析整个字符串-对吗Regex 为什么这种比较会再次出现?(正则表达式),regex,Regex,我对第二个比较感到困惑。这不是意味着一个以[a-dXYZ]开头,以[a-dXYZ]结尾的字符串吗 还是说一个以[a-dXYZ]开头,以[a-dXYZ]结尾,长度为1的字符串?如果这是真的,使用^和$符号,如“^….$”(最左边和最右边)消除所有子字符串,并仅分析整个字符串-对吗 注意:这不是一个我该如何回答的问题。我想了解一种因果关系。^[a-dXYZ]$将恰好匹配一个字符:a,b,c,d,X,Y,Z,并且是第一个字符和最后一个字符。所以你的第二个观察结果很直接 ^表示输入开始,$表示输入结束
注意:这不是一个我该如何回答的问题。我想了解一种因果关系。
^[a-dXYZ]$
将恰好匹配一个字符:a
,b
,c
,d
,X
,Y
,Z
,并且是第一个字符和最后一个字符。所以你的第二个观察结果很直接
^
表示输入开始,$
表示输入结束
您可以使用*
重复0次或更多次,或使用+
重复1次或更多次:
1)mysql> SELECT 'aXbc' REGEXP '[a-dXYZ]'; -> 1
2)mysql> SELECT 'aXbc' REGEXP '^[a-dXYZ]$'; -> 0
3)mysql> SELECT 'aXbc' REGEXP '^[a-dXYZ]?$'; -> 0 // 0 or 1
4)mysql> SELECT 'aXbc' REGEXP '^[a-dXYZ]+$'; -> 1 // 1 or more
5)mysql> SELECT 'aXbc' REGEXP '^[a-dXYZ]*$'; -> 1 //0 or more
如果要匹配以[a-dXYZ]
开头和结尾的字符串,可以使用以下命令:
^[a-dXYZ]+$
在一些正则表达式实现中,可以使用<代码> M>代码>修饰符,这将使<代码> ^ 和<代码> $>代码>匹配行的开始和结束,RATER比输入,考虑下面的Perl片段:
^[a-dXYZ].*[a-dXYZ]$
# ^ Match anything zero or more times
它将仅替换以下一致的所有线路:
s/^1+$/_/gm
^[a-dXYZ]$
将恰好匹配一个字符:a
,b
,c
,d
,X
,Y
,Z
,并且是第一个字符和最后一个字符。所以你的第二个观察结果很直接
^
表示输入开始,$
表示输入结束
您可以使用*
重复0次或更多次,或使用+
重复1次或更多次:
1)mysql> SELECT 'aXbc' REGEXP '[a-dXYZ]'; -> 1
2)mysql> SELECT 'aXbc' REGEXP '^[a-dXYZ]$'; -> 0
3)mysql> SELECT 'aXbc' REGEXP '^[a-dXYZ]?$'; -> 0 // 0 or 1
4)mysql> SELECT 'aXbc' REGEXP '^[a-dXYZ]+$'; -> 1 // 1 or more
5)mysql> SELECT 'aXbc' REGEXP '^[a-dXYZ]*$'; -> 1 //0 or more
如果要匹配以[a-dXYZ]
开头和结尾的字符串,可以使用以下命令:
^[a-dXYZ]+$
在一些正则表达式实现中,可以使用<代码> M>代码>修饰符,这将使<代码> ^ 和<代码> $>代码>匹配行的开始和结束,RATER比输入,考虑下面的Perl片段:
^[a-dXYZ].*[a-dXYZ]$
# ^ Match anything zero or more times
它将仅替换以下一致的所有线路:
s/^1+$/_/gm
$[a dxyz ] $它寻找1个长度字符串作为一个整体,不考虑子串?它将匹配一个1字符长的输入。AM允许在字符串的中间使用^ $符号,如果^ ^ [b](.*)(^ [k] $)(.*)[b] $返回BAAKAB的真值。或者它取决于在哪里使用?(oracle sql、mysql、java)@BurakKarasoy,正如我之前所说:
^和$将匹配输入的开头和结尾
。因此,在匹配的中间使用这些元字符会使匹配无效。这个问题的答案使我困惑,也感谢你的时间。^ [aDXYZ ] $它寻找1个长度字符串作为一个整体,不考虑子串。它将匹配一个1字符长的输入。[B] (.*)(^[K]$)(.[B]$”使用BAAKAAB返回true。或者它取决于在何处使用?(oracle sql、mysql、java)正如我前面所说的:@代码> ^和$将匹配输入< /代码>的开始和结束。因此,在匹配的中间使用这些元字符将使匹配无效。这个问题的答案使我困惑,也感谢您的时间。