Select 行至少不包含字母和数字的正则表达式代码

RegEx Code That Select Lines Not Including A Letter And A Number At Least

我需要一个正则表达式代码 select 所有行不包括至少 1 个字母1 个数字

例如:

aaaaaaaa
11111111
@!@!@^%a
@!@!@^%1

^\D*$|^[^a-zA-Z]*$

想法是该行完全由 non-digit 个字符 (\D) 或 (|) non-letter个字符([^a-zA-Z])。

你可以使用这个:

^[^\p{Xan}\n]*(?:\pN+[^\pL\n]*\pL|\pL+[^\pN\n]*\pN).*

demo

(notepad++ 不需要 m 修饰符,因为 ^$ 默认匹配行的开始和结束。)

\p{Xan}匹配字母和数字,但regex101不支持,可以使用[\pN\pL].

注意:\pL\pN 匹配 unicode 字母和数字。如果您只想处理 ASCII 字母,请改用 A-Za-z0-9