0

情報を分離するために必要な巨大な文字列があります。それのいくつかの部分は異なり、いくつかはそうではありません。私が直面している困難は、私が望む一致を得ることができるシンボルまたは何かを見つけることができないということです. したがって、文字列は次のとおりです。

$str = "01;01;283;Póvoa do Vâle do Trigo;15315100 01;01;249;Alcafaz;;;;;;;;;;;3750;011;AGADÃO 01;01;2504;Caselho;;;;;;;;;;;3750;012;AGADÃO _ "15" '' ghdhghg AND IT CONTINUES

したがって、文字列 ( 01;01;283;Póvoa do Vale do Trigo;15315100) の最初の部分を見ると、私が残しておきたいのは次のとおりです。

01;01;283

そして残りのものを取り除きます

いずれの場合も、最初の例を見ると... : 01 は常に 2 より大きくならない数値です (040、150505、4075 ではありません)。次の 01 も 2 より大きくなりません (405、1565、425 ではありません)。次に、283 はより大きくなる可能性のある数値であり、さまざまです (300、17581、または 40755794 のいずれかになります)。

基本的には、次のような各部分の最初だけが必要です。

01;01;283
01;01;249
01;01;2504
05,80,104258
94,76,56789124

スペルミスでごめんなさい、私はポルトガル人です


この分離された部分が配列に移動することを忘れていました! したがって、正規表現は、たとえば次のように一致しないはずです。

15315100 01;01;249

だから私は使えない .+ たとえば

PREG_REPLACE を使用しています

4

3 に答える 3

0

これを試して:

/(\d+;\d+;\d+)/

動作するはずです。

于 2013-10-22T23:15:22.407 に答える