gab*_*abr 3 javascript regex delphi smart-mobile-studio
如何在Smart Mobile Studio中使用正则表达式?例如,我如何在Object Pascal中编写以下示例?
var re = /\w+\s/g;
var str = "fee fi fo fum";
var myArray = str.match(re);
console.log(myArray);
Run Code Online (Sandbox Code Playgroud)
在SmartMS中,正则表达式在w3regex单元中实现,因此您首先要添加w3regex到uses列表中.
var re = /\w+\s/g;不支持"短"形式(例如来自问题).要创建正则表达式对象,必须使用构造函数.
re := TW3RegEx.Create('\w+\s', 'g');
Run Code Online (Sandbox Code Playgroud)
内置字符串对象不支持正则表达式匹配.为了简化使用,该w3regex单元实现了字符串帮助程序,它将Match,Replace,Search和Split方法引入字符串对象.
直接翻译您的代码即可
var re := TW3Regex.Create('\w+\s', 'g');
var str := 'fee fi fo fum';
var myArray := str.Match(re);
Run Code Online (Sandbox Code Playgroud)
(至于日志记录,我目前还不知道如何很好地将字符串数组写入控制台,但这不是问题的一部分.)
w3regex为Match方法实现了一些重载,它将为您动态创建正则表达式对象.由于您还可以将辅助方法应用于字符串文字,因此可以将代码缩短为:
var myArray: TStrArray = ('fee fi fo fum').Match('\w+\s', 'g');
Run Code Online (Sandbox Code Playgroud)
在这种情况下,需要在字符串文字周围加括号.
RegExDemo程序中记录了许多在SmartMS中使用正则表达式的方法,这是安装的一部分.
| 归档时间: |
|
| 查看次数: |
293 次 |
| 最近记录: |