Maison > développement back-end > tutoriel php > 关于正则表达式的一个问题

关于正则表达式的一个问题

WBOY
Libérer: 2016-08-04 08:53:58
original
940 Les gens l'ont consulté

问题: 有字符串:“python php ruby javascript jsonp perhapsphpisoutdated”
对于该字符串,使用纯正则获取 所有带p 但是不能包含ph 的单词

输出数组 [ 'python', 'javascript', 'jsonp' ]

这个问题想了比较久,也没思路
我的解法是

<code>var result = str.match(/\b\w*(?=p)\w*\b/g)
                .filter((value)=>!/.*(?=ph)/.test(value))
var result2 = str.match(  /\b((?!ph|\s).)*((p[^h\s]((?!ph|\s).)*)|p)\b/g  ) 
console.log(result2)</code>
Copier après la connexion

但是不符合纯正则的要求

群里有大牛给了这么一个答案

<code>/\b((?!ph|\s).)*((p[^h\s]((?!ph|\s).)*)|p)\b/g </code>
Copier après la connexion

完美运行

但是我看不懂,希望有大牛能帮我解读

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal