2017-03-14 5 views
0

私はファイルを解析して分析しようとしています。これを行うために、私はpreg_split()を使って文書を配列に分割しました。私は配列内の単語だけを必要とします(そうでなければアルファベット文字)。私が使用した正規表現は、phpのアルファベット以外の文字の正規表現とは何ですか?

$noAlpha = "/[\s]+|[^A-z]+|\W|\r/"; 

ですが、配列の空白のインスタンスを取得しています。私はそれが返品(\r)とそれ以外のものとラインとしなければならないと信じています。

私は唯一の.txtファイルを使用しています。これを説明するために、正規表現に何を追加する必要がありますか?あなたはこれを試すことができ $noAlpha = "/\s+|[^a-zA-Z]+|\W|\r/";

+0

する必要がありますあなただけのpreg_match_all 'で単語を抽出してもよい。この

preg_match_all('/[^\W\d_]+/',$string,$matches) 

を使用することができます( '〜\ p {L} +〜'、$ text、$ words) ' –

+1

' [^ Az] 'は期待したものと一致しない可能性があります:http://stackoverflow.com/questions/4923380/difference-between -regex-az-and-a-za-z –

+0

コメントをいただきありがとうございました。私は考慮しなかった詳細を知る助けになりました – jKim83

答えて

1

、あなたは、同様の数字をしたい場合は、パターンが'/[^\W_]+/'

+0

ありがとうございました、これはうまくいった! – jKim83

1

はこれを試してみてください。すべての単語(文字のみ)を抽出するには

1

$noAlpha = "/\s*\W\s*/"; 

しかし、私はまた、代わりにpreg_match_allで単語を抽出う

+0

ありがとう、私はpreg_match_all – jKim83

関連する問題