regex 正则表达式,如何允许点(句点)和字母的组合?

kx7yvsdv  于 2023-03-24  发布在  其他
关注(0)|答案(7)|浏览(213)

我想允许.a-zA-Z字母和_-,我有一些问题的.
你知道吗?

nr9pn0ug

nr9pn0ug1#

[A-Za-z_.-]

是一个字符类,它包含了你提到的所有字符。在一个字符类中,没有必要转义.,如果你把它放在第一个或最后一个,你可以避免转义-
如果数字也可以,可以将其缩短为

[\w.-]
bnlyeluc

bnlyeluc2#

这将执行[a-zA-Z_.-]+
在字符类([])之外,您需要转义点(\.),因为它是 meta字符。

[a-z]+\.com  #matches `something.com`
yfjy0ee7

yfjy0ee73#

[a-zA-Z_\-.]应该可以工作。您可能需要使用双斜杠,具体取决于您使用的语言。

bbuxkriu

bbuxkriu4#

.在正则表达式中有一个特殊的含义,它用来表示任何字符。因此你需要使用转义字符。
所以你需要使用\.

i7uaboj4

i7uaboj45#

避开它,因为它是一个特殊的字符:

\.
iqih9akk

iqih9akk6#

正如大家已经说过的,如果你用方括号括起一组字符(在这种情况下不需要转义),你就是在说:“请允许我把这些字符放进去。我为你找到了一个参考视频:Skip to 22-23 min

mccptt67

mccptt677#

这应该可以正常工作:

[A-z._\-]+

请注意,根据您的编程语言,您可能必须转义该斜杠。

相关问题