簡體   English   中英

查找字符串的正則表達式

[英]Finding Regular expression for a string

任何人都可以幫我找到下面的正則表達式

$string = "id=A12dk9-mds&name=4950";

我需要找到正則表達式來查找動態值(在此示例中為A12dk9-mds )。

=&之間的動態內容

正如@MarkBaker所說,執行此操作的最佳方法不是正則表達式,而是parse_str()因為您實際上正在處理URL的查詢字符串。

因此,以下應該工作正常:

parse_str($string,$arr);
echo $arr['id']; // A12dk9-mds

可以使用簡單的正則表達式。

/id=([^&]*)&/

說明:

  • id=匹配id =
  • ([^&]*)盡可能匹配除&符號之外的任何內容並返回
  • &匹配&

只要你知道他們將永遠是一個之間=&這將工作。

PHP代碼:

$string = "id=A12dk9-mds&name=4950";
preg_match('/id=([^&]*)&/',$string, $answer);
print_r($answer[1]);

RegEx是錯誤的工具。 這看起來像一個查詢字符串,所以讓我們使用PHP的查詢字符串解析器parse_str

$string = "id=A12dk9-mds&name=4950";
parse_str($string, $parsed);
echo $parsed['id'];

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM