javascript - 用于验证 android App id 的 Android 正则表达式不完全正确
问题描述
我正在尝试验证 Android App ID 名称,我使用了这个正则表达式模式 -/com\.[a-z]+\.[a-z]+/
这样做,但这仅验证文本com.example.com的模式,但从我的研究中我发现 Google play 上的一些应用程序的捆绑 ID 名称为例如eu.og.com或au.gh.cc.com甚至com.example.jk.com,请问我如何使用 Javascript 中的正则表达式验证所有这些。
<script>
var android_prop = "com.example.com";
regexp = /com\.[a-z]+\.[a-z]+/;
if (regexp.test(android_prop))
{
alert("Correct Android name");
} else {
alert("Void Android name");
}
</script>
解决方案
因此,在检查并进行了一些搜索之后,我想出了一个解决方案来解决 Javascript 和 PHP 中的正则表达式问题,以供将来可能遇到问题的人使用。
对于 JAVASCRIPT:
//var android_prop = $("#android_apps_text").val(); - uncomment this if you want the value from a textarea for validation and clean off next line
var android_prop = "com.example.com || eu.gh.ho.com"; //any android name
regexp = /^[a-z][a-z0-9_]*(\.[a-z0-9_]+)+[0-9a-z_]$/i;
if (regexp.test(android_prop))
{
alert("Valid android app id.");
} else {
alert("Invalid android app id.");
}
对于 PHP:
//DO NOT CREATES MATCHES VARIABLE, COPY AND PASTE THE PHP CODE BELOW
$android_prop = "com.example.com || eu.gh.cc.com"; //matches all android pattern
$re = '/^[a-z][a-z0-9_]*(\.[a-z0-9_]+)+[0-9a-z_]$/i';
if (preg_match_all($re, $android_prop, $matches)){
echo "Valid android app ID";
} else {
echo "Invalid android app ID";
}
推荐阅读
- sql - 如何使用 redshift 从表中解析 JSON
- javascript - 三点语法不复制数组
- c# - 如何确定office 2016、2019和365
- sql-server - 使用带有 SQL 游标的 case 语句对每一行执行计算并对结果求和
- python - python AttributeError - 模块 'os' 没有属性 'mkfifo' // 替代 Windows
- apache-drill - 使用 group by 查询以获取列中的逗号分隔值
- java - Apache Camel Route 中未显示新行字符
- python - Python solve_ivp 事件函数
- sql - R 行号 df
- amazon-web-services - 无法将数据从 fluentd 发送到 Amazon Hosted Kafka