好的,你好!我有一个正则表达式模式:
Pattern p = Pattern.compile("^[a-zA-Z_\\$][\\w\\$]*(?:\\.[a-zA-Z_\\$][\\w\\$]*)*$");
我希望它能告诉我Java/Android软件包名称是否合法。在桌面Java上运行良好,但在Android设备上失败。
假设我有一些软件包名称:
". .", "ПАвыапЫВАПыва", "com.mxtech.ffmpeg.v7_neon", ...
测试应该表明唯一有效的软件包是"com.mxtech.ffmpeg.v7_neon",但也显示了测试字符串。
" _ПАвыапЫВАПыва\_ "
是有效的。为什么?(它是西里尔文。)
Android和桌面实现有什么区别?