15分でわかるvbscriptの正規表現
vbsでの正規表現
検索する文字列が str="hello world Hello World" であると仮定する。
1 - ルールは基本的にdosのfindstrと同様です。微妙な違いがあります。もしルールに迷ったら、cmdのfindstrの説明を見てください。
2 - どのように動作するのですか?
a - RegExp クラスを作成します。
set reg=new RegExp
b - クラスの属性
reg.pattern - 正規表現で検索テンプレートを作成する
例:reg.pattern="hello"
reg.global=true --- strですべてを置き換えるか、最初にマッチしたものだけを置き換えるか決定します。
reg.replace(str, "x")---str の hello を x で置き換える。
reg.ignorecase=true---大文字・小文字を区別しないことを示す。
c - クラスのメソッド
set matches=reg.execute(str)---method executeは、マッチからなるセットオブジェクトを作成します。
このセットオブジェクトにアクセスするには、for each ... next というステートメントを使用します。
コレクション内の各オブジェクトは、次の2つのプロパティを持ちます。
属性1 firstindex属性です。
属性2 値属性
のようなものです。
strong@foreverstrong:~/darknet_model_validation/coco_detection_evaluation/cocoapi/PythonAPI$ make
python setup.py build_ext --inplace
running build_ext
building 'pycocotools._mask' extension
creating build
creating build/common
creating build/temp.linux-x86_64-2.7
creating build/temp.linux-x86_64-2.7/pycocotools
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g - fstack-protector-strong -Wformat -Werror=format-security -fPIC -I/home/strong/.local/lib/python2.7/site-packages/numpy/core/include -I ... /common -I/usr/include/python2.7 -c . /common/maskApi.c -o build/temp.linux-x86_64-2.7/.. /common/maskApi.o -Wno-cpp -Wno-unused-function -std=c99
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g - fstack-protector-strong -Wformat -Werror=format-security -fPIC -I/home/strong/.local/lib/python2.7/site-packages/numpy/core/include -I ... /common -I/usr/include/python2.7 -c pycocotools/_mask.c -o build/temp.linux-x86_64-2.7/pycocotools/_mask.o -Wno-cpp -Wno-unused-function - std=c99
x86_64-linux-gnu-gcc: error: pycocotools/_mask.c: No such file or directory
x86_64-linux-gnu-gcc: fatal error: no input files
compilation terminated.
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
Makefile:3: recipe for target 'all' failed
make: *** [all] Error 1
最後に、上記をまとめると、以下のように完全なプログラムになります。
strong@foreverstrong:~/darknet_model_validation/coco_detection_evaluation/cocoapi/PythonAPI$ pip install cython
Collecting cython
Downloading https://files.pythonhosted.org/packages/fe/d6/a097bd9913cc0fc974b968f5586d3f0609f46ca58b2aae3b8dfd51c1fe18/Cython-0.28. 2-cp27-cp27mu-manylinux1_x86_64.whl (3.3MB)
100% |████████████████████████████████| 3.3MB 499kB/s
Installing collected packages: cython
Exception:
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/pip/basecommand.py", line 215, in main
status = self.run(options, args)
File "/usr/local/lib/python2.7/dist-packages/pip/commands/install.py", line 342, in run
prefix=options.prefix_path,
File "/usr/local/lib/python2.7/dist-packages/pip/req/req_set.py", line 784, in install
**kwargs
File "/usr/local/lib/python2.7/dist-packages/pip/req/req_install.py", line 851, in install
self.move_wheel_files(self.source_dir, root=root, prefix=prefix)
File "/usr/local/lib/python2.7/dist-packages/pip/req/req_install.py", line 1064, in move_wheel_files
isolated=self.isolated,
File "/usr/local/lib/python2.7/dist-packages/pip/wheel.py", line 345, in move_wheel_files
clobber(source, lib_dir, True)
File "/usr/local/lib/python2.7/dist-packages/pip/wheel.py", line 323, in clobber
shutil.copyfile(srcfile, destfile)
File "/usr/lib/python2.7/shutil.py", line 83, in copyfile
with open(dst, 'wb') as fdst:
IOError: [Errno 13] Permission denied: '/usr/local/lib/python2.7/dist-packages/cython.pyc'
You are using pip version 9.0.1, however version 10.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
正規表現は何度見ても泥臭い。
実は、正規表現を学ぶには、実践で学ぶのが一番なんです。
/findstrは
dosのFindstrは正規表現検索です。vbsにもあります。
{vbsにもあります。
以下のアプレットは、vbsで書かれた学習用プログラムです。
正規表現のグローバル属のみ選択されました。グローバル属とは?使ってみればわかる。
ここでは、空虚な言葉のことを言っているのです。
また、正規表現のルールはどこを見ればいいのでしょうか? dos findstr /?
このパッケージを使えば、10分もあれば正規表現が何なのか理解できると思います。
単純な表現だけではありません。
以下のコードをコピーして、regtest.vbsという名前で保存すればOKです。
strong@foreverstrong:~/darknet_model_validation/coco_detection_evaluation/cocoapi/PythonAPI$ sudo pip install cython
[sudo] password for strong:
The directory '/home/strong/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. If executing pip with sudo, you may want sudo's -H flag.
The directory '/home/strong/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the If executing pip with sudo, you may want sudo's -H flag.
Collecting cython
Downloading https://files.pythonhosted.org/packages/fe/d6/a097bd9913cc0fc974b968f5586d3f0609f46ca58b2aae3b8dfd51c1fe18/Cython-0.28. 2-cp27-cp27mu-manylinux1_x86_64.whl (3.3MB)
100% |████████████████████████████████| 3.3MB 516kB/s
Installing collected packages: cython
Successfully installed cython-0.28.2
You are using pip version 9.0.1, however version 10.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
strong@foreverstrong:~/darknet_model_validation/coco_detection_evaluation/cocoapi/PythonAPI$ make
python setup.py build_ext --inplace
run build_ext
cythoning pycocotools/_mask.pyx to pycocotools/_mask.c
building 'pycocotools._mask' extension
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g - fstack-protector-strong -Wformat -Werror=format-security -fPIC -I/home/strong/.local/lib/python2.7/site-packages/numpy/core/include -I ... /common -I/usr/include/python2.7 -c . /common/maskApi.c -o build/temp.linux-x86_64-2.7/.. /common/maskApi.o -Wno-cpp -Wno-unused-function -std=c99
x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g - fstack-protector-strong -Wformat -Werror=format-security -fPIC -I/home/strong/.local/lib/python2.7/site-packages/numpy/core/include -I ... /common -I/usr/include/python2.7 -c pycocotools/_mask.c -o build/temp.linux-x86_64-2.7/pycocotools/_mask.o -Wno-cpp -Wno-unused-function - std=c99
creating build/lib.linux-x86_64-2.7
creating build/lib.linux-x86_64-2.7/pycocotools
x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-func
今回の記事はこれだけです。今後、スクリプトのホームが増えることを期待します。
関連
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
vbs pingの2つの実装方法
-
ActiveXコンポーネントはオブジェクトを作成できません: dm.dmsoft code: 800A01AD
-
vbs 指定されたファイルを指定されたディレクトリにコピーする。
-
vbを使用してコンピュータのアクティビティログを監視する方法
-
VBS ワンクリック設定 VOIP スクリプトコード
-
vbs 文字列取得 (文字列の取り込み)
-
ComboBoxコントロールの使用方法に関するチュートリアル
-
vbsでリモートホストのファイルを取得し、指定されたディレクトリに保存する。
-
vbscriptを用いた36ビット自動増加数生成コード
-
Iisext.vbsでWebサービス拡張を有効にする方法