【问题标题】:php regular expression match any word characters except numbersphp正则表达式匹配除数字以外的任何单词字符
【发布时间】:2015-05-12 18:58:57
【问题描述】:

我需要从这个正则表达式中获取除数字之外的所有内容,我该怎么做?

^[\w'-`´]{1,50}$

所以,这里的问题是 \w 也匹配数字,而我不希望它匹配数字。我希望正则表达式返回除数字之外已经返回的所有内容!

【问题讨论】:

  • 来自这个正则表达式的一切?请澄清您的问题
  • 我需要一个类似于这个的正则表达式,它返回相同的字符而没有数字
  • 此正则表达式包括例如 ZàáâãäçèéêëììíîïñòóôõöùúûüýÿÀÁÂÃÄÇÈÉÊËÌÍÎÏÑÒÓÔÔÕÖÙÚÛÜÝ
  • 你只想要 a-z 和 A-Z?
  • 我想要 '-`' 加上 \w 匹配的字符,没有数字

标签: php regex regex-negation


【解决方案1】:

这样的事情会起作用:

^(?=\D+$)[\w'`´-]{1,50}$

这将首先断言字符串中没有数字,然后使用您当前的检查。

-已经移到最后,否则有特殊含义。感谢 MikeM 指出这一点。

【讨论】:

  • 问题是这也匹配 []()*?等等等等
  • 因为'-` 创建了一个范围。最好将- 放在[] 的末尾。
【解决方案2】:

我想要 '-`' 加上 \w 匹配的不带数字的字符

如果您想要特定字符以及 \w 匹配的内容(除了数字),这有什么问题?

^[a-zA-Z'`´_-]{1,50}$

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多