正则表达式用于在点之间查找单词

时间:2019-01-30 07:37:57

标签: python regex

我是RegEx的新手,我想使用正则表达式在点之间查找单词。

例如,文本是这样的:

abc.efg.hij.klm.opq.

我尝试过以下RegEx:

\.(\w+)\.

它只显示2个匹配项:

.efg.
.klm.

为什么会得到这个结果?

以下是RegEx的链接:https://regex101.com/r/pqMN8t/1/

1 个答案:

答案 0 :(得分:3)

它仅显示两个匹配项,因为正则表达式引擎将不匹配已匹配的内容。匹配 <!DOCTYPE html> <html lang="en"> <head> {% block jquery %} <script src="https://code.jquery.com/jquery-3.3.1.min.js"></script> <script > document.addEventListener('DOMContentLoaded', function () {    var width = window.innerWidth; if (width > 540) { $('#desktop').load('main.html'); } else { $('#mobile').load('main.html'); } }); </script> {% endblock %} </head> <body> <div id="mobile"> // Mobile // </div> <div id="desktop"> // Desktop // </div> </body> </html>后,它将不匹配.efg.之前的点,因为该点已经匹配(hij之后的点)。

解决此问题的一种方法是不匹配点,而改用先行和后备:

efg

这样,点将不匹配。