示例字符串
785*()&!~`a
##$%$~2343
455frt&*&*
我想要捕获第一个和第三个但不是第二个,因为它不包含任何字母字符plz help
答案 0 :(得分:5)
事实上,我认为[a-zA-Z]
可能足以匹配您的字符串。
要抓住整个内容,请尝试:^.*[a-zA-Z].*$
答案 1 :(得分:3)
这是一种可能的方式:
.*[a-zA-Z]+
答案 2 :(得分:2)
你应该澄清一下'catpuring'你的意思:你想要整个字符串只是ascii位吗?
此外,您不会说它是否应该只匹配普通的罗马字母(A到Z),或者它是否也应匹配Unicode字符以匹配其他语言的字符串。
如果你只需要测试你的字符串,你可以在C#中执行:
bool matching = Regex.IsMatch(myString, "[a-zA-Z]");
您不需要任何其他内容,因为myString
字符串中任何位置只有一个字母匹配(根据您的定义)。
答案 3 :(得分:0)
这是我最喜欢的RegEx测试网站:Javascript Regexp Tester and Cheat Sheet
答案 4 :(得分:0)
如果要匹配所有字母(包括非ascii字母),请使用p{L}
代替[a-zA-Z]
。请参阅Unicode categories。