当前位置: 首页 > 知识库问答 >
问题:

以简单的方式包含重音字符的好正则表达式是什么?

易炳
2023-03-14

现在我的正则表达式是这样的:

[a-zA-Z0-9]但它不包括我想要的重音字符。我还想加入“-”。

共有3个答案

公羊信厚
2023-03-14

没有排除规则的版本:

^[-'a-zA-ZÀ-ÖØ-öø-ÿ]+$

解释

  • 锚定符断言我们位于字符串的开头

参考

  • 扩展ASCII表
白哲茂
2023-03-14

你用你的表情:

\p{L}\p{M}

Unicode格式将匹配:

  • 任何语言的任何字母字符(L)
景阳曜
2023-03-14

重音字符:DIY字符范围减法

如果您的regex引擎允许(许多人也会允许),这将起作用:

(?i)^(?:(?![×Þß÷þø])[-'0-9a-zÀ-ÿ])+$

请看演示(您可以添加字符进行测试)。

解释

  • (?i)设置不区分大小写的模式
  • 锚定符断言我们位于字符串的开头
  • <代码>(?:(?![××Þ÷þø])[-'0-9a-zÀ-ÿ])匹配一个字符
  • 前瞻(lookahead)断言字符不是括号中的字符
  • <代码>[-'0-9a-zÀ-ÿ]允许破折号、撇号、数字、字母和字符在很大的重音范围内,我们需要从中减去
  • 代码与此匹配一次或多次
  • 锚定符断言我们处于字符串的末尾

参考

扩展ASCII表

 类似资料:
  • 我正在学习python中的正则表达式,但似乎无法掌握它的窍门。我正在尝试过滤掉英语中包含所有元音的所有单词,这是我的正则表达式: 看起来它太模糊了,因为任何元音(即使是重复的)都可以出现在任何地方,任何数字都是时间,所以这是抛出像“可操作的”、“不幸的”这样的单词,这些单词的元音数是5,但不是所有的元音。我环顾互联网,发现了这个正则表达式: 但看起来,它只是为了元音的顺序出现,比我试图完成的任务相

  • 我将如何编写一个正则表达式(Python或Java)来匹配包含10位数字(0-9)的字符串。我不在乎它是否包含任何其他字符,并且10位数字不必是连续的。例如,我想跟随字符串进行匹配:“2fdf675

  • 我已经研究了堆栈溢出(替换字符...呃,JavaScript如何不遵循有关RegExp的Unicode标准等等),但还没有找到这个问题的具体答案: 目前,我正在讨论三种添加支持的方法中的一种,所有这些方法我都进行了测试和工作(至少在某种程度上,我不知道第二种方法的“范围”是什么)。它们在这里: 这将使姓/名与中支持的任何重音字符正确匹配。 这与任何东西都是匹配的,至少以的形式是这样的。好吧,我想.

  • 我将一个regex模式列表传递给< code>grep来检查syslog文件。它们通常匹配IP地址和日志条目; 这只是一个模式列表,例如我正在循环传递的“1\.2\.部分,因此我无法传递“-v”。 我很困惑试图做上述的逆,不匹配线与某个IP地址和错误!1.2.3.4.*已爆炸”将匹配除1.2.3.4告诉我它已爆炸之外的任何syslog行。我必须能够包括一个IP地址不匹配。 在Stack Overf

  • 问题内容: 我正在尝试查找带有重音符号的数据。我已经试过了: 而且有效。它查找XML数据字段包含where的所有记录。问题在于它仅将大写字母E与重音符匹配。我试图编写一个更通用的查询,以使用对等类查找带有重音元音(a,e,i,o,u,大写和小写以及任何重音)的所有数据。我想要一个正则表达式 仅 匹配重音元音,但是我不确定如何获取它,因为等价类(例如匹配 所有 e的(带或不带有重音))都可以。 另外

  • 问题内容: 我已经研究了StackOverflow替换字符。eh,JavaScript如何不遵循有关RegExp的Unicode标准等),还没有真正找到问题的具体答案: 我正在强制UI中的字段匹配以下格式:( 最后一个[逗号空间]首先) ,并且我想提供对变音符号的支持,但是显然在JavaScript中,它比其他语言/平台要难一些。 这是我的原始版本,直到我想添加变音符号支持: 目前,我正在讨论增加