ホームページ  >  記事  >  バックエンド開発  >  高度な文字列処理テクノロジ_PHP チュートリアル

高度な文字列処理テクノロジ_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 17:46:06832ブラウズ

文字列処理

文字列、いわゆる文字列は、数字、文字、特殊文字、非表示文字を含む 0 個以上の文字のセットです。

1. 文字列をエスケープして復元します
多くの場合、文字列は制御文字として解釈されます。この問題を解決するには、特殊文字をエスケープする必要があります。 PHP では、addslashes() 関数とtripslashes() 関数によって文字列がエスケープされ、復元されます。

addslashes (string) では、文字列にスラッシュを追加して、指定した文字列内の文字をエスケープできます。変換できる文字には、一重引用符、二重引用符、バックスラッシュ、およびヌル文字が含まれます。 SQL ステートメントを生成するときによく使用されます。 リダクションは、stripslashes() 関数を使用したエスケープと同じです。

これら 2 つの関数は、指定された範囲内の文字列をエスケープおよび復元できます。 string addcslashes ( string $str , string $charlist ) charlist は、バックスラッシュが前に付く文字列を指定します。

2.インターセプト

文字列の sunstr() 関数をインターセプトします。指定した位置の文字列から一定の長さの文字を抽出します。部分文字列の開始点として正の数値を使用してこの関数を呼び出すと、開始点から終了する文字列が取得されます。部分文字列の開始点として負の数値を使用すると、次の部分文字列が取得されます。元の文字列の末尾の文字数は、指定された負の数の絶対値に等しくなります。

string substr (string str,int $start [,int $length]) パラメータは次のとおりです: 文字列、インターセプト開始位置、インターセプト桁数 (インターセプト文字数)

strlen() 関数は文字列の長さを取得します。

3. 文字列の分割と合成

セグメンテーションとは、より多くの機能を実現するために、コンテンツを一定のルールに従って文字列に分類して格納することを指します。文字列の分割では、explode() 関数を使用して、指定されたルールに従って文字列を分割し、戻り値は配列になります。
arrayexplore ( string $separator, string $string [, int $limit] ) この関数は、文字列で構成される配列を返します。各要素は境界点として文字列区切り文字で区切られます。 limit パラメーターが設定されている場合、返される配列には制限要素までが含まれ、最後の要素には文字列の残りの部分が含まれます。
explode(区切り文字、区切り文字列[含まれる要素数]を指定)

文字列を合成するには、implode() 関数を使用します。構文は同じです。配列内の要素を新しい文字列に結合します。 implode(区切り文字、マージされたデータ);


4. 文字列を交換します

文字列置換テクノロジは、投稿または掲示板内の不正な文字をブロックし、関数 str_ireplace() および substr_replace() を使用して文字列置換機能を実現します。

srt_ireplace() 関数は、元の文字列内の置換対象として指定された文字列を新しい部分文字列 (部分文字列) に置き換えます。
mixed str_ireplace (mixed $search,mixed$replace,mixed$subject[,int&$count]) パラメータ subject に現れるすべての検索パラメータをパラメータ replace で置き換えます。パラメータ &count は、文字列を置換する回数を表します。

$search は検索する文字列を指定します。交換予定
$replace は置換値を指定して
に置き換えます $subject は置換する検索範囲を指定します
count は、実行される置換の数を取得するためのオプションのパラメーターです

この関数は大文字と小文字を区別しません。大文字と小文字を区別するには、srt_replace() を使用します

substr_replace() 関数は、指定された文字列内の文字列の一部を置き換えます。 。パラメータ: どの文字列であるか、どの文字で置換するか、置換文字列の開始位置、長さを指定します

5. 文字列、文字列検索に適用される関数 (strstr() 関数や substr_count() 関数など) を取得します。

strstr() 関数は、別の文字列内で指定された文字列が最初に出現してから、その文字列の末尾までの部分文字列を取得します。行が成功した場合は残りの文字列が返され、それ以外の場合は false が返されます。この関数では大文字と小文字が区別されます。大文字と小文字の区別を避けるには、stristr() 関数を使用します。 (初登場位置)
最後の場合は、大文字と小文字が区別される strrchr() 関数を使用します。 strripos() は最後の出現位置もチェックしますが、大文字と小文字は区別されません。

substr_count() は、文字内に文字列が出現する回数を取得します。

6. 文字列から先頭と末尾のスペースと特殊文字を削除します
trim() 関数は文字列の左側と右側の空白文字と特殊文字を削除します。lrtim() は左側の空白文字と特殊文字、rtrim() は右側です
string ltrim (string $str[,string $charlist]) str は、操作対象の文字列オブジェクトです。 charlist はオプションのパラメーターであり、指定された文字列から削除する必要がある文字を指定します。このパラメーターが設定されていない場合、すべてのオプションの文字が削除されます。


7. 文字列とHTMLの変換
文字列とHTMLの間で変換するには、ソースコードを実行せずに直接Webページに出力します。関数htmlentities(),
を使用します。 htmlentities (string $string [, int $quote_style],[string $charset]) $string 必須パラメータ、変換する文字列を指定、quote_Style オプション パラメータ、文字列内の引用符の処理方法を選択、charest オプション パラメータ、OK 変換されたキャラクターセット。


8. 正規表現: 正規表現は、文字列の構造を記述する文法規則です。


完全な正規表現は、メタキャラクタとテキスト文字の 2 つの部分で構成されます。メタキャラクタは特別な意味を持つ文字であり、テキスト文字は通常のテキストです。 PCRE スタイルの正規表現は通常、区切り文字/中間に配置されます。

PHP には 2 つの正規表現関数ライブラリが提供されていますが、実行効率の点では PCRE 関数ライブラリの方が POSIX 関数ライブラリよりわずかに優れているため、ここでは PCRE 関数ライブラリについて説明します。

preg_match() 関数は、正規表現パターンに従って指定された文字列を検索し、一致させます。
preg_match_all() 同上

preg_grep() 関数は配列内の要素と一致します

弦交換
preg_replace() 関数と preg_replace_callback() 関数は、複雑な文字列置換操作を完了します。
preg_replace() 関数は、正規表現パターンに基づいて文字列の検索および置換操作を完了します。

文字列の分割
preg_split() 関数は、複雑な文字列分割操作を完了します。


著者「テクノロジー・イズ・キング」

www.bkjia.com本当http://www.bkjia.com/PHPjc/478615.html技術記事文字列処理文字列、いわゆる文字列は、数字、文字、特殊文字、非表示文字を含む 0 個以上の文字のセットです。 1. 文字をエスケープして復元...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。