我有一些路径,我想获得的结果只是兄弟文件夹和给定文件夹的文件。例如,我有如下路径
E:\xampp\htdocs\wp1\wp-content\index1.php
E:\xampp\htdocs\wp1\wp-content\index2.php
E:\xampp\htdocs\wp1\wp-content\dark\index1.php
E:\xampp\htdocs\wp1\wp-content\dark\index2.php
E:\xampp\htdocs\wp1\wp-content\dark\php\index1.php
E:\xampp\htdocs\wp1\wp-content\dark\php\index2.php
如果使用wp-content进行搜索,我只需要结果wp-content
根文件和文件夹(仅wp-content根文件及其同级文件夹dark
)
E:\xampp\htdocs\wp1\wp-content\index1.php
E:\xampp\htdocs\wp1\wp-content\index2.php
E:\xampp\htdocs\wp1\wp-content\dark\index1.php
E:\xampp\htdocs\wp1\wp-content\dark\index2.php
如果用黑暗搜索。我想要结果dark
单独的根文件和文件夹,如下面的
E:\xampp\htdocs\wp1\wp-content\dark\index1.php
E:\xampp\htdocs\wp1\wp-content\dark\index2.php
E:\xampp\htdocs\wp1\wp-content\dark\php\index1.php
E:\xampp\htdocs\wp1\wp-content\dark\php\index2.php
SELECT * FROM table WHERE file REGEXP 'wp-content[*\\{2,3}]'
我试过上面这样做不起作用。
我希望匹配wp-content
之后的匹配(搜索文件夹)只有1 or 2 not more than that
斜杠应该在那里。
答案 0 :(得分:1)
[]
内的字符是一个字符集,表示下一个字符必须匹配其中一个字符(或量词指定的任何数字)。 您的正则表达式检查文字wp-content
后面跟着其中一个字符*
,\
,{
,2
,{{1 }},,
或3
。
你想要的可能是
}
会检查您的字符串wp-content\\[^\\]+(\\[^\\]+)?$
,然后是wp-content
,其后后跟字符不为\
({{1}在字符类中否定它)。
然后可选后面可以跟着另一个\
后跟而不是成为^
的字符。
最后,它必须与文字的结尾匹配 - \
。
此致