私は、次のしている:括弧の中からコンテンツを取得する最良の方法は何ですか?(こんにちは)?
(ハロー) (がhello123) (がhello123 $ pecialChars &#@)
私は、括弧の間に内容を毎回取得する方法が必要です。それをする良い方法は何でしょうか?
私は、次のしている:括弧の中からコンテンツを取得する最良の方法は何ですか?(こんにちは)?
(ハロー) (がhello123) (がhello123 $ pecialChars &#@)
私は、括弧の間に内容を毎回取得する方法が必要です。それをする良い方法は何でしょうか?
それぞれに空白がないので、次のパターンは\(([^ ]+)\)/
(空白ではなく、かっこの間にあり、リテラル文字にエスケープされたものの1つ以上に一致します):
$data = "(hello) (hello123) (hello123$pecialChars&#@)";
preg_match_all('/\(([^ ]+)\)/', $data, $arr, PREG_PATTERN_ORDER);
// print_r($arr) gives:
Array
(
[0] => Array
(
[0] => (hello)
[1] => (hello123)
[2] => (hello123$pecialChars&#@)
)
[1] => Array
(
[0] => hello
[1] => hello123
[2] => hello123$pecialChars&#@
)
)
編集:述べたように、パターン\(([^)]+)\)
、またはmatch an open parenthesis followed by one or more characters that are not a close parenthesis and are followed by a close parenthesis
は、(あなたがあなたのデータに閉じ括弧を持っている可能性がある場合や、スペースを持っている可能性がある場合に応じて)良いかもしれません。
私は '[^)] +'自分自身を考えていますが、... –
@pst私はそれが好きです!見た目が良くなり、意味があり、スペース以外のものに限定されず、まさに彼が望むものです。 –
何を試しましたか? :) '('と ')'は正規表現では特殊なので、保護する必要があることに注意してください。 –
私はこれを試しました - > $ items = preg_match_all( '#\ d +#'、$ string、$ matches); foreach($ $ itemsとして一致){エコー$ items}しかし、正規表現は整数だけを抽出することです。私の正規表現は吸うので、私は立ち往生しています。 – Fran