我試圖從不同的字符串中拉出某個部分,並且很難得到正確的正則表達式。下面是什麼,我想拉從幾個例子:PHP正則表達式在後期和空間之前拉文本
- AG055.MA - MAGNUM(想回到剛纔MA)
- WI460.16 - 這是(想回到16)
- AG055 .QB(想要返回QB)
所以基本上,我只是想拉字符後的時間,但之前的空間。之前或之後沒有別的。有人能幫助我獲得正確的正則表達式嗎?
我試圖從不同的字符串中拉出某個部分,並且很難得到正確的正則表達式。下面是什麼,我想拉從幾個例子:PHP正則表達式在後期和空間之前拉文本
所以基本上,我只是想拉字符後的時間,但之前的空間。之前或之後沒有別的。有人能幫助我獲得正確的正則表達式嗎?
這應該工作:
<?php
preg_match('/\.([^ ]+)/', $text, $matches);
print_r($matches);
?>
輸出:
Array
(
[0] => .MA
[1] => MA
)
Array
(
[0] => .16
[1] => 16
)
Array
(
[0] => .QB
[1] => QB
)
正則表達式找到一個。字符,然後在它之後獲取不是空格字符的任何字符。 +使得它只返回點後面有非空格字符的匹配項。
preg_match('/\w+\.(\w{2})\s/', $input, $matches);
echo $matches[1];
\w+
指1點或多個字的字符(A-Z,A-Z和0-9)。\.
指週期/點(反斜槓是逃跑,因爲\.
用作正則表達式的操作者)(\w{2})
比賽2個字字符\s
指空白preg_match('/^[A-Z0-9]{5}\.([A-Z0-9]{2})/', $string, $matches);
var_dump($matches);
應返回$matches[1]
中的字符。