Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Français - Português - Русский -
Scilabヘルプ >> Strings > regexp

regexp

正規表現文字列に一致する部分文字列を探す

呼び出し手順

[start] = regexp(input, pattern, [flag])
[start, final] = regexp(input, pattern, [flag])
[start, final, match] = regexp(input, pattern, [flag])
[start, final, match, foundString] = regexp(input, pattern, [flag])

引数

input

文字列.

pattern

(正規表現の規則に基づく)文字列

start

正規表現文字列patternに 一致するinputの各部分文字列の 開始添字

final

正規表現文字列patternに 一致するinputの各部分文字列の 終端添字

match

patternに一致する inputの各部分文字列のテキスト.

match

patternにマッチするinput の部分文字列のテキスト.

foundString

取得された括弧で括られたサブパターン.

[flag]

パターンに一回マッチする場合は,'o'.

説明

Perl言語に似た正規表現の規則. すぐに始めるには, http://perldoc.perl.org/perlrequick.htmlを参照ください. より詳細なチュートリアルについては, http://perldoc.perl.org/perlretut.htmlを参照ください. また,リファレンスについてはhttp://perldoc.perl.org/perlre.htmlを参照ください.

Perlとの違いは,Perlでは文字ではない位置 (例えば,/^/または/(?=o)/) にPerlではマッチできますが,Scilabではできません.

regexp('xabyabbbz','/ab*/','o')
regexp('a!','/((((((((((a))))))))))\041/')
regexp('ABCC','/^abc$/i')
regexp('ABC','/ab|cd/i')
[a b c]=regexp('XABYABBBZ','/ab*/i')
piString="3.14"
[a,b,c,piStringSplit]=regexp(piString,"/(\d+)\.(\d+)/")
disp(piStringSplit(1))
disp(piStringSplit(2))
[a,b,c,d]=regexp('xabyabbbz','/ab(.*)b(.*)/')
size(d)
// URLからホスト名を取得
myURL="http://www.scilab.org/download/";
[a,b,c,d]=regexp(myURL,'@^(?:http://)?([^/]+)@i')
str='foobar: 2012';
// 名前のあるサブパターンを使用
[a,b,c,d]=regexp(str,'/(?P<name>\w+): (?P<digit>\d+)/')
d(1)=="foobar"
d(2)=="2012"

参照

  • strindex — 他の文字列の中で指定した文字列の位置を探す.

履歴

バージョン記述
5.4.0 サブパターンマッチの結果を取得するために 新しい出力引数, foundString, が追加されました.
Scilab Enterprises
Copyright (c) 2011-2015 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Wed Jun 15 08:35:29 CEST 2016