HarmonyOS 鸿蒙Next怎么进行格式校验

发布于 1周前 作者 yuanlaile 最后一次编辑是 5天前 来自 鸿蒙OS

HarmonyOS 鸿蒙Next怎么进行格式校验

现有一个string类型的变量

我要判断这个变量里面的值是否时number类型


类似于

let num1: string = ’12345‘
let num2: string = ‘12345abc’

如何进行数字校验

4 回复

官方有相关的api来进行判断,导入国际化能力 @ohos.i18n


import I18n from '@ohos.i18n';

//判断字符串char是否是数字 let isdigit: boolean = I18n.Unicode.isDigit(“1”); // isdigit = true

//判断字符串char是否是字母 let isletter: boolean = I18n.Unicode.isLetter(“a”); // isletter = true<button style="position: absolute; padding: 4px 8px 0px; cursor: pointer; top: 8px; right: 8px; font-size: 14px;">复制</button>

 
[@Entry](/user/Entry)
[@Component](/user/Component)
struct Page34 {
  isNumeric(str: string): boolean {
    // 正则表达式,匹配所有的数字字符
    const regex = /^\d+$/;
<span class="hljs-comment"><span class="hljs-comment">// 使用正则表达式的test方法来检测字符串</span></span>
<span class="hljs-keyword"><span class="hljs-keyword">return</span></span> regex.test(str.trim());

}

build() { Column() { Button(‘测试’).onClick(() => { let num1: string = ’ 12345 ’ let num2: string = ‘12345abc’

    console.info(`${num1} isNumber ${<span class="hljs-keyword"><span class="hljs-keyword">this</span></span>.isNumeric(num1)}`)
    console.info(`${num2} isNumber ${<span class="hljs-keyword"><span class="hljs-keyword">this</span></span>.isNumeric(num2)}`)
  })
}
.height(<span class="hljs-string"><span class="hljs-string">'100%'</span></span>)
.width(<span class="hljs-string"><span class="hljs-string">'100%'</span></span>)

} }<button style="position: absolute; padding: 4px 8px 0px; cursor: pointer; top: 8px; right: 8px; font-size: 14px;">复制</button>

打印

12345   isNumber true
12345abc isNumber false<button style="position: absolute; padding: 4px 8px 0px; cursor: pointer; top: 8px; right: 8px; font-size: 14px;">复制</button>

谢谢解答,感觉下面方法简单一点

在HarmonyOS(鸿蒙)开发中,进行格式校验通常涉及对XML布局文件、JSON数据或代码文件等内容的验证。针对Next版本,你可以使用Android Studio或DevEco Studio(针对鸿蒙开发的IDE)内置的Lint工具来自动检查这些文件的格式问题。

确保你的IDE设置正确,开启了相应的Lint检查项。对于自定义的格式校验需求,你可能需要编写自定义的Lint规则或使用正则表达式等工具在代码审查阶段进行。

如果问题依旧没法解决请加我微信,我的微信是itying888。

回到顶部