示例字符串

785*()&!~`a

##$%$~2343

455frt&*&*

我想要捕获第一个和第三个但不是第二个,因为它不包含任何字母字符plz help

有帮助吗?

解决方案

事实上,我认为 [a-zA-Z] 可能足以匹配你的字符串。

要捕捉整个事物,请尝试: ^。* [a-zA-Z]。* $

其他提示

这是一种可能的方式:

.*[a-zA-Z]+

你应该澄清一下'catpuring'你的意思:你想要整个字符串只是ascii位吗?

此外,您不会说它是否应该只匹配普通的罗马字母(A到Z),或者它是否也应匹配Unicode字符以匹配其他语言的字符串。

如果你只需要测试你的字符串,你可以在C#中执行:

bool matching = Regex.IsMatch(myString, "[a-zA-Z]");

你不需要任何其他东西,因为 myString 字符串中的任何一个字母都匹配(根据你的定义)。

这是我最喜欢的RegEx测试网站: Javascript Regexp Tester和Cheat Sheet

如果要匹配所有字母(包括非ascii字母),请使用 p {L} 而不是 [a-zA-Z] 。请参阅 Unicode类别

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top