[英]PHP regex to extract both open parenthesis and the following text
我正在嘗試檢測傳入單詞的初始左括號,如果是這樣,還提取前面的文本。
例如:
一個可能的輸入詞可能是:
(原版的
這個想法是一方面有左括號
“(”
另一方面
“原版的”
這就是我目前擁有的:
preg_match('/(\()(\w+)/', $input_line, $output_array);
以這種方式匹配:
array(3
0 => (original
1 => (
2 => original
)
我正在努力讓它返回類似的東西:
array(2
0 => (
1 => original
)
我知道它可以使用strpos
完成並從那里拆分,但此外,它不僅是左括號而且是花括號等......所以正則表達式應該匹配幾個字符。
我缺少什么? 謝謝!
0
索引是完全匹配的模式。 之后的每個索引都是一個捕獲組。
https://www.php.net/manual/en/function.preg-match.php
$matches[0] 將包含與完整模式匹配的文本,$matches[1] 將包含與第一個捕獲的帶括號的子模式匹配的文本,依此類推。
您可以獲得 output ,您希望將模式更改為在\w+
的正前瞻中使用捕獲組,並匹配(
preg_match('/\((?=(\w+))/', "(original", $output_array);
print_r($output_array);
Output
Array
(
[0] => (
[1] => original
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.