問題タブ [strpos]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - PHP の Strpos の問題
私は単純な関数を書いていますが、何らかの理由 (おそらく単純なもの) でうまくいきません。
問題の原因を突き止めようとして、変数に実際に何かが含まれていることを確認するために、If ステートメントの上にエコー行を配置しました。
私の問題は、IF ステートメントが出力されないことです。
A$postID
は数字123123
です。
$cookie
文字列は通常次のようなものです123123.23422.234234.2342342.234234
ご協力いただきありがとうございます!
sql - SQL Server: strpos() に相当するものはありますか?
私は、1 つのフィールドに 2 つの別々のフィールドを格納する必要があるものが含まれている厄介なデータベースを扱っています。したがって、列は「最初の文字列~@~2番目の文字列」のように格納されます。「~@~」は区切り文字です。(繰り返しますが、これは私が設計したものではありません。修正しようとしているだけです。)
これを 2 つの列に移動するクエリが必要です。これは次のようになります。
しかし、strpos に相当するものが存在することがわかりません。
php - PHPの文字列から特定の文字を削除する
「#」や「\」などの特定の文字について PHP の文字列を確認するにはどうすればよいですか?
私は実際には置換を使用したくありません。true または false を返すだけです。
ありがとう
php - 「strpos」関数の間違い?php
strpos
文字列変数で「test」というフレーズを検索しようとし$string
ていますが、「test」が含まれていない場合は、別の変数$change
が次のように再定義されます$string2
($change
以前に定義されている場合)
しかし、残念ながらそれは機能しません。
上記に間違いはありますか?
ありがとうございました。
php - 奇妙な strpos の動作
これは私のコードです:
これはその出力です:
この動作は予期しないものです。私がやっていると思っていたのは、HTTP ヘッダーの Content-Location 属性を見て、ソフト 404 を検出することでした。strpos 関数は、私が理解できない決定を下します。どこで私は間違えましたか?(ちなみに、これは他のサイトで動作する必要はありません。)
php - PHP: strpos() を使用して針だけを見つける
干し草の山から針を見つけるために strpos() を使用しています。でも、弦の長さが同じ針だけを見つけてほしい。例えば:
そのため、見つかった文字列の文字列の長さを確認し、それを針に合わせて、同じ長さかどうかを確認する必要があります。したがって、123/abc は abc に正しく一致しますが、123/abcdefghijk は 3 文字よりもはるかに長いため、abc に一致させたくありません。
php - パフォーマンスに関する文字列照合
SQLクエリが発行されるたびに次のチェックを実行する汎用DBクエリ関数があります。
if (preg_match('~^(?:UPDATE|DELETE)~i', $query) === 1)
if (preg_match('~^(?:UPDATE|DELETE)~iS', $query) === 1)
if ((stripos($query, 'UPDATE') === 0) || (stripos($query, 'DELETE') === 0))
strpos()
単純な呼び出しは、を実行するよりもはるかに高速であることを私は知っていますが、 2回preg_match()
呼び出しているので、どちらがより良いパフォーマンスを発揮するかは本当にわかりません。strIpos()
2番目のオプションのS
パターン修飾子も、マニュアルから、私の頭にいくつかの混乱をもたらします。
パターンを複数回使用する場合は、マッチングにかかる時間を短縮するために、パターンの分析に時間をかける価値があります。この修飾子が設定されている場合、この追加の分析が実行されます。現在、パターンの調査は、開始文字が1つ固定されていないアンカーされていないパターンにのみ役立ちます。
この場合、速度は重要ではありませんが(そうでない場合は、この汎用クエリ関数を使用しません)、単純さを維持しながら、可能な限り高速に実行したいと思います。
上記のオプションのどれを選択する必要がありますか?
編集:私は単純なベンチマークを実行しましたが、それでもどちらの方法がより効果的かを判断できません。
10,000回の試行の結果は次のとおりです(合計所要時間、秒単位)。
100,000回の試行:
1,000,000回の試行:
10,000,000回の試行:
結果は大きく異なることがわかるように、これがベンチマークを実行する正しい方法であるかどうか疑問に思います。
php - PHP を使用して、MySQL からの検索結果を文字列内の検索クエリの位置で並べ替える
検索結果を、文字列の位置が小さいものから大きいものの順に並べたいと考えています。たとえば、「バナナ」を検索すると、次の結果が返されます。
離乳食、プラム、バナナ、米、裏ごし
バナナ、乾燥バナナ、またはバナナパウダー
バナナ、生
パン バナナ レシピ通り マーガリン入り
キャンベル スープ カンパニー、V8 SPLASH ジュース ドリンク、ストロベリー バナナ
CAMPBELL Soup Company、V8 SPLASH スムージー、ストロベリー バナナ
CAMPBELL Soup Company、V8 V. FUSION ジュース、ストロベリー バナナ
「バナナ」は結果の最初の単語であるため、「バナナ、生」を最初に表示し、「バナナ」は最後の単語であるため、「CAMPBELL Soup...」を最後に表示します。
strpos() を使用して位置を見つけることができることは知っていますが、どうすればすべてをまとめることができますか?
php - PHP で strpos() が文字列内の二重引用符 ('"') を見つけられない
この両方:
この:
次の出力が得られます。
Strpos は二重引用符を完全に見つけることができず、false を返します (strpos() === false で確認しました)。誰かがここで何が起こっているのか教えてもらえますか? strpos が二重引用符を処理できないことを示唆するドキュメントが見つかりません。なぜ見つからないのですか? 私は途方に暮れています。
php - php 5 strpos()0とfalseを返すことの違いは?
私はこれが真実として解決されることを期待します、それはそうします。しかし、私がするとどうなりますか
これはphp5にも渡されます。なぜなら、私が理解できる限り、strposはfalseを返し、これは0として変換されるからです。
これは正しい考え方/行動ですか?もしそうなら、その部分文字列が別の文字列の先頭にあることをテストするための回避策は何ですか?