Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2025.0.0 - 日本語


regexp

文字列内で、正規表現に一致する部分文字列を検索 (および抽出) します

呼び出し手順

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

引数

input

文字列.

pattern

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

start

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

final

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

match

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

match

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

foundString

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

"once" | "o" 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="https://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, が追加されました.
Report an issue
<< prettyprint Strings sci2exp >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Thu Oct 24 11:17:42 CEST 2024