簡體   English   中英

使用正則表達式從字符串中提取模式

[英]Extract pattern from string with regex

如何使用正則表達式從以下字符串中提取數字和鍵?

 Duplicate entry '24040446669881344' for key 'clave_something'
 Duplicate entry '24040446669881345' for key 'clave_something_else'

我嘗試使用子字符串,但是當鏈的長度更改時,它將無法工作。

謝謝!

這樣,您將從字符串中獲取所有整數:

preg_match_all('~\d+~', $string, $match);
print_r($match);

演示

對於您的特定示例,還提取密鑰:

preg_match("~'(.+?)'.+'(.+?)'~", $string, $match);
print_r($match);

演示

或者,如果您希望獲取多行字符串:

preg_match_all("~'(.+?)'.+'(.+?)'~m", $string, $match, PREG_SET_ORDER);
print_r($match);

演示

嘗試這個:

preg_match("/Duplicate entry '([^']+)' for key '([^']+)'/", $theString, $matches);

變量$matches將包含您所需的數據。

暫無
暫無

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

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