HarmonyOS 如何自定义正则表达式

在java中有像以下的正则表达式方法,比如:

import java.util.regex.Matcher;
import java.util.regex.Pattern;
//只允许输入汉字、以及A-Za-z()() ·
  public static final boolean checkForeignName(String chinese) {
        String check = "^[\\u4E00-\\u9FA5A-Za-z()() ·]+$";
        Pattern regex = Pattern.compile(check);
        Matcher matcher = regex.matcher(chinese);
        return matcher.matches();
    }
//:验证字符串是否是数字
  public static boolean checkIsNum(String str) {
        Pattern pattern = Pattern.compile("^[0-9]*$");
        Matcher match = pattern.matcher(str);
        if (match.matches() == false) {
            return false;
        } else {
            return true;
        }
    }

项目中有很多关于输入的限制,要求各种各样,需要用正则表达式进行匹配,但在HarmonyOS中应该使用哪些API呢?请用HarmonyOS的方法实现以上两个方法。

HarmonyOS
9天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
superinsect

下面是有关正则表达式适配:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-more-cases-V5#arkts-no-regexp-literals

正则表达式是通用的,下面是demo:

let reg: RegExp;
reg = new RegExp('#\\\([0-9a-zA-Z\u4e00-\u9fa5]{0,20}\\\)')
const sss: string = '@xxxx#(难过)#(愉快)#(愉快)xx';
let res=reg.test(sss)
console.log("正则=============>"+res)
//只允许输入汉字、以及A-Za-z()() ·
let reg1=new RegExp( "^[\\u4E00-\\u9FA5A-Za-z()() ·]+$")
let s="你好"
let res1=reg1.test(s)
console.log("正则------------>"+res1)
//:验证字符串是否是数字
let reg2=new RegExp("^[0-9]*$")
let ss="1234854856"
let res2=reg2.test(ss)
console.log("正则------------>"+res2)
分享
微博
QQ
微信
回复
9天前
相关问题
如何使用正则表达式
533浏览 • 1回复 待解决
HarmonyOS 正则表达式匹配不到
93浏览 • 1回复 待解决
使用正则表达式的示例
645浏览 • 1回复 待解决
HarmonyOS 正则表达式执行有问题
108浏览 • 1回复 待解决
mysql正则表达式匹配数字
2115浏览 • 1回复 待解决
HarmonyOS 扩展表达式
84浏览 • 1回复 待解决
动态import 变量表达式
1277浏览 • 1回复 待解决
HarmonyOS 动态import变量表达式做反射
135浏览 • 2回复 待解决
HarmonyOS 如何自定义相机
110浏览 • 1回复 待解决
自定义弹窗自定义转场动画
1242浏览 • 1回复 待解决
HarmonyOS 如何自定义tab
534浏览 • 2回复 待解决
HarmonyOS 如何自定义注解?
369浏览 • 1回复 待解决
HarmonyOS 如何自定义toast
252浏览 • 1回复 待解决
HarmonyOS 如何自定义BuildMode?
733浏览 • 1回复 待解决
HarmonyOS 定义自定义组件
164浏览 • 1回复 待解决