javascript - 需要正则表达式

标签 javascript jquery regex

我需要编写一个正则表达式,允许标准字符 [a-zA-Z0-9] 在每个单词之间加上一个空格,变音符号 [äöüÄÖÜ] 、一个点 (.) 和一个连字符 (-),没有其他特殊字符。

例如:

应允许以下内容:

Dr. Aaryan Joshi    
Phill Rozer MSc.    
Ajay Verma5    
Rajan-Verma MSc.

并且不应允许以下内容:

Ajay     Verma
Dr. Ajay. Verma.
Test Name.-.Name2

最佳答案

试试这个

^(?! )(?!.* $)(?=[^.]*\.?[^.]*$)(?=[^-]*-?[^-]*$)(?!.*? {2,})[a-zA-Z0-9äöüÄÖÜ .-]+$

查看here on Regexr

^$anchors匹配字符串的开头和结尾

[a-zA-Z0-9äöüÄÖÜ .-]+character class带有量词(+ => 1 或更多)这部分匹配您想要允许的所有字符。

(?!)(?=)negative/positive look aheads .他们验证您设置的条件。

(?!) 不以空格开头
(?!.* $) 不以空格结尾
(?=[^.]*\.[^.]*$) 字符串中的任何地方只允许一个点
(?=[^-]*-[^-]*$) 字符串中的任何地方都只允许一个破折号
(?!.*? +) 序列中不允许超过一个空格

关于javascript - 需要正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8033910/

相关文章:

javascript - 仅动态包含一次 javascript 文件

javascript - 如何获取两个日期之间的确切月份数?

javascript - onclick 不触发 jquery 中的所有代码

本地存储中的 JavaScript 文件

javascript - 如何根据属性选择功能

javascript - 容器、行、列 - 在 React-Bootstrap 中不起作用

python正则表达式,空格之间只有数字

javascript - 聚合 JSON 数据 javascript

python - 正则表达式:用另一种模式替换一种模式

ruby - 正则表达式匹配字符串中的确切单词