[解決済み】バッチファイル。部分文字列が(ファイル内ではなく)文字列内にあるかどうかを調べる
2022-04-03 09:58:09
質問
バッチファイルの中で、文字列
abcdefg
. をチェックしたいのです。
bcd
が文字列の中にある。
残念ながら、私が見つけた解決策はすべて ファイル は、文字列ではなく、部分文字列を探します。
簡単な解決方法はありますか?
どのように解決するのですか?
はい、置換を使用して、元の文字列と照合することができます。
if not x%str1:bcd=%==x%str1% echo It contains bcd
は
%str1:bcd=%
ビットは
bcd
で
str1
を空文字列にして、オリジナルと異なるようにしました。
オリジナルが
bcd
の文字列が含まれていれば、変更後のバージョンは同一になります。
以下のスクリプトでテストすると、実際に動作することがわかります。
@setlocal enableextensions enabledelayedexpansion
@echo off
set str1=%1
if not x%str1:bcd=%==x%str1% echo It contains bcd
endlocal
そして、いろいろな実行結果です。
c:\testarea> testprog hello
c:\testarea> testprog abcdef
It contains bcd
c:\testarea> testprog bcd
It contains bcd
2,3の注意点。
-
は
if
ステートメントがこのソリューションの中心で、他のすべてはサポートです。 -
は
x
を等号の前に置くことで、文字列のbcd
は問題なく動作します。また、特定の不適切な開始文字から保護することもできます。
関連
-
[解決済み] JavaScriptで文字列が部分文字列を含むかどうかを確認する方法は?
-
[解決済み] Pythonには文字列の'contains'サブストリングメソッドがありますか?
-
[解決済み] Bashで文字列が部分文字列を含むかどうかをチェックする方法
-
[解決済み] ある文字列が特定の単語を含んでいるかどうかを確認するにはどうすればよいですか?
-
[解決済み] Pythonで文字列の部分文字列を取得するにはどうすればよいですか?
-
[解決済み] バッチファイルに引数を渡すにはどうしたらいいですか?
-
[解決済み] N日以上前のファイルを削除するバッチファイル
-
[解決済み】WindowsでTCPまたはUDPポートをリッスンしているプロセスを見つけるにはどうすればよいですか?
-
[解決済み】バッチ/cmdで "コメントアウト"(コメント追加)するには?
-
[解決済み】Windowsのバッチファイル:.batと.cmdの違いは?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】バッチ内のファイル名、ディレクトリ名、またはボリュームラベルの構文が正しくない
-
[解決済み】exec: "gcc": go buildしようとすると%PATH%に実行可能ファイルが見つからない
-
[解決済み] .dllファイルに「このプログラムはDOSモードでは実行できません」というテキストがあるのはなぜですか?
-
[解決済み] 200 PORT コマンドが成功しました。PASVの使用を検討してください。425 接続の確立に失敗しました。
-
[解決済み] OpenSSL が設定ファイルの distinguished_name を見つけられませんでした。
-
tensorflow load error 終了コード -1073741819 (0xC0000005)でプロセス終了。
-
.NET フレームワークのインストールに失敗しました 0x800c0006 解決方法
-
[解決済み] ファイルパスの前に付ける「୧⃛(๑⃙⃘◡̈๑⃙⃘)୨⃛」は何ですか?
-
[解決済み] Windows (10)にPythonがインストールされているかどうかをテストし、インストールされていない場合はexeを実行してインストールするにはどうすればよいですか?
-
[解決済み] 管理者として実行せずにネットワークドライブにマップするためのBATファイル