3

对于像这样的文字

1" 77568T86 34 
2" 5347A1Q 456

我想返回字符串77568T5437A

我猜我想要一些像这样开始的东西\d{4,5}

编辑:感谢所有回复。不幸的是,notepad++ 没有任何功能,即使它们与在线正则表达式测试器一起使用。

我认为问题在于 notepad++ 对 {} 的处理,因为会(\d[A-Z])找到匹配项。

建议?

4

4 回答 4

3

是的,你在正确的轨道上。[A-Z]只需在数字组后面添加一个([A-Za-z]如果不区分大小写,请使用)。

\d{4,5}[A-Z]

如果它前面应该有空格或某个边界,请在前面加上\b

\b\d{4,5}[A-Z]

我不熟悉 Notepad++ 如何处理匹配捕获组,但很可能你会希望整个事情都被包围()

\b(\d{4,5}[A-Z])
于 2012-08-13T21:20:46.920 回答
1

你猜对了。您只需要在表达式的末尾添加一个字母类:

\d{4,5}[a-zA-Z]

(这允许大写或小写;a-z如果您只想要大写,请删除)

于 2012-08-13T21:21:48.273 回答
1

这应该有效:

\d{4,5}[A-Z]

你自己看

于 2012-08-13T21:25:18.400 回答
0

使用这个正则表达式(?i)\b\d{4,5}[a-z]

于 2012-08-13T21:31:11.337 回答