私はこの正規表現を持っています:
/(.*)(([0-9]([^a-zA-Z])*){7,}[0-9])(.*)/.
次の値が与えられた場合
0654535263
065453-.-5263
065asd4535263
予想された結果
06****
06****
06****
実績
0654535263
06****
065asd4535263
文字のために最後の行と一致せず(0〜3文字で一致させたい)、最後の出現のみに一致します(例の2行目では、最初の行をスキップします)。
まず第一に、すべての回答が非常に役に立ち、私はあなたの時間を借りていることに感謝します。次のような文字列を使用できるため、数値の配列を作成してそのようにマスクすることはできません。
私はジョンです。私の電話番号は 0, 6, 5, 4, 5, 3, 5, 2, 6 - 3 -- 065asd4535263 です。
簡単にするために、入力した携帯電話番号を非表示にしたいと思います。
私は2つの問題を抱えていました:
- 上記の regxp を変更して、3 文字以内で区切られた数字を非表示にします。
- preg_replace は 1 回だけ置換していました。
最後に、任意の数の特殊文字 (12--654-5、453/--222、23....5645 など) で区切られた、少なくとも 6 桁の長さの任意の数字の配列を置き換える正規表現が必要です。または3 文字 (文字) 以下 (06asd453、123as562)。
繰り返しますが、すべての回答は非常に役に立ちますが、質問を正しく作成しなかったため、私は愚かです。
ps私はあなたに評判を与えることはできません.私は少なくとも15を持っていなければならないので、私はそれを得るとすぐに「投票」します.