[英]The negative assertions in PHP regular expression
我試圖找到在表單中的所有用戶名http://www.test.com/username/
,但不是在形式http://www.test.com/username/ANY_VALID_URL_PART
。 我在PHP中嘗試了否定性斷言 ,但失敗了。
將內容設為:
<a href="http://www.test.com/username1/show" http://www.test.com/username2/ http://www.test.com/username3 target="_blank">
我想在http://www.test.com/username/
和http://www.test.com/username
獲得用戶名部分,但我也想忽略http://www.test.com/username/show
的用戶名http://www.test.com/username/show
。 我嘗試了以下方法:
preg_match_all("/(https?:\/\/www.test.com)\/([A-Za-z]+[A-Za-z0-9]+)(?<!(\/[A-Za-z0-9&?_-]))/i", $input_lines, $output_array);
但是結果是:
Array
(
[0] => Array
(
[0] => http://www.test.com/username1
[1] => http://www.test.com/username2
[2] => http://www.test.com/username3
)
[1] => Array
(
[0] => http://www.test.com
[1] => http://www.test.com
[2] => http://www.test.com
)
[2] => Array
(
[0] => username1
[1] => username2
[2] => username3
)
)
誰能告訴我為什么(?<!(\\/[A-Za-z0-9&?_-]))
不起作用,以及如何解決?
甚至以為我只能選擇一個答案,非常感謝您的幫助!!!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.