FreeBASIC 正規表現を使う
目次→フォーラム→FreeBASIC→補足→"Replace Function" with "regular expression"←オリジナル・サイト
ここでは、正規表現 を使った、文字列の検索 と 文字列の置換 を扱います。
1.正規表現の外部ライブラリ:PCRE を使う
正規表現検索
正規表現置換
2.正規表現の外部ライブラリ:TRE を使う
1.正規表現の外部ライブラリ:PCRE を使う
正規表現のプログラム例は、FreeBASIC の下記のフォルダにあります。
examples\regex\PCRE\
注意:FreeBASIC で正規表現を使って、下記のエラーになる場合、
C:\Tool\FreeBASIC\bin\win32\ld.exe: cannot find -lpcre
pcre-839-static.zip を下記でダウンロードするか、
http://users.freebasic-portal.de/stw/files/prog/fb/libs/pcre-839-static.zip
もしくは、FB-win32-pcre-8.32.zip を下記でダウンロードして、
http://sourceforge.net/projects/fbc/files/Older%20versions/0.90.1/Binaries%20-%20Windows/Libraries/FB-win32-pcre-8.32.zip/download
FreeBASIC のフォルダに追加登録します。
正規表現検索
例:
プログラム例「examples\regex\PCRE\pcredemo.bas」を利用して、Boolean の結果を返す ExecRegExpr を作りました。
このプログラムを「TreatAsTextSearch.bas」という名前で保存します。
そして、下の「VB.ini」を、同じフォルダに登録したうえで、このプログラムを実行してみて下さい。
ファイル名「VB.ini」で上のプログラムと同じフォルダに保存して下さい。
正規表現置換
プログラム例「examples\regex\PCRE\preg_class.bas」にある、関数「preg_match_simple」と「preg_replace_simple」を利用しています。
例1:
このプログラムを「preg_class_test.bas」という名前で保存します。
そして、下の「preg_class.bi」と「preg_class.bas」を同じフォルダに保存します。
そして、この「preg_class_test.bas」をコンパイルして実行します。
例2:
このプログラムを「TreatAsTextReplace.bas」という名前で保存します。
そして、下の「preg_class.bi」と「preg_class.bas」、および「VB.ini」を同じフォルダに保存します。
そして、この「TreatAsTextReplace.bas」をコンパイルして実行します。
関数の宣言を、#Include しているヘッダーファイル「preg_class.bi」で行っているため、このプログラムには、単純に関数名を記述するだけで使えます。
このプログラムを、「preg_class.bi」というヘッダーファイル名で、下の「preg_class.bas」と同じフォルダに保存します。
このプログラムを「preg_class.bas」という名前で保存します。
2.正規表現の外部ライブラリ:TRE を使う
正規表現の関数例は、FreeBASIC の下記のフォルダにあります。
examples\regex\TRE\
注意:FreeBASIC で正規表現を使って、下記のエラーになる場合、
\FreeBASIC\bin\win32\ld.exe: cannot find -ltre
FB-win32-tre-0.8.0.zip を下記でダウンロードして、FreeBASIC のフォルダに追加登録します。
https://sourceforge.net/projects/fbc/files/Older%20versions/0.90.1/Binaries%20-%20Windows/Libraries/FB-win32-tre-0.8.0.zip/download
match.bas
replace.bas
subexpr.bas
ページ歴史:2016-09-23 22:00
作成:2016-09-20 21:00
日本語著作:WATANABE Makoto、原文著作者:MindlessXD & MisterD & srvaldez & St_W & Roland Chastain
