当前位置: 首页 > news >正文

长沙营销型网站建设正规接单赚佣金的平台

长沙营销型网站建设,正规接单赚佣金的平台,网站界面怎么做,艺术字转换器花体字标准的正则表达式是什么样的 Node.js(JavaScript) 在正则表达式中,斜杠(/)用来表示正则表达式的开始和结束。在JavaScript中,正则表达式可以使用斜杠包裹起来,以表示这是一个正则表达式的字面量。 在Node.js中&…

标准的正则表达式是什么样的

Node.js(JavaScript)

在正则表达式中,斜杠(/)用来表示正则表达式的开始和结束。在JavaScript中,正则表达式可以使用斜杠包裹起来,以表示这是一个正则表达式的字面量。

在Node.js中,可以使用正则表达式的test()方法来检查一个字符串是否匹配某个模式。以下是一个示例代码,演示了如何使用正则表达式匹配以1开头,后面跟着两个数字的字符串:

const str = '123';
const regex = /^1\d{2}$/;if (regex.test(str)) {console.log('匹配成功');
} else {console.log('匹配失败');
}

在上面的示例中,^1\d{2}$是一个正则表达式,它的含义是:

^:匹配字符串的开头
1:匹配字符1
\d{2}:匹配两个数字(\d表示任意数字,{2}表示匹配两次)
$:匹配字符串的结尾

因此,该正则表达式可以匹配以1开头,后面跟着两个数字的字符串。在示例中,str的值为123,它符合这个模式,所以输出结果为匹配成功。

Java

private void RegTest2() {String content ="abc$(abc(1.23(";//匹配(String regStr = "\\d{2}";
//        String regStr = "\\.";Pattern pattern = Pattern.compile(regStr);Matcher matcher = pattern.matcher(content);while (matcher.find()){Log.i(TAG,"match:" + matcher.group(0));}}
2023-08-11 17:49:18.021 27898-29062/cn.jj.reg I/JJWorld.MainActivity: match:23

结论

不同语言正则表达式有区别,缺乏统一的正则标准。

ASCII码表

java读取文件assets中ini文件时,转义符消失的问题

java读取文件时,分为了三步。

第一步通过inputStream获取输入流。

如果将读取到的数据依次打印的话,可以看到是读取到了转移字符的

Properties properties = IniPropertiesReadUtils.loadFileFromAssetsNew(this, "jjapm1.ini");
     //读取Assets目录下的配置文件public static Properties loadFileFromAssetsNew(Context context, String filePath) {if (null == context || null == filePath || filePath.length() == 0)return null;InputStream assetFileIS = null;InputStreamReader assetFileISReader = null;Properties properties = new Properties();int readData = 0;try {assetFileIS = context.getResources().getAssets().open(filePath);while ((readData = assetFileIS.read())!= -1){Log.i(TAG,"read:" + (char)readData);}} catch (IOException e) {e.printStackTrace();properties = null;} finally {try {if (null != assetFileIS) {assetFileIS.close();}if (null != assetFileISReader) {assetFileISReader.close();}} catch (IOException e) {e.printStackTrace();}}return properties;}

在这里插入图片描述

2023-08-12 10:05:26.258 27428-27460/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read:c
2023-08-12 10:05:26.258 27428-27460/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read:l
2023-08-12 10:05:26.258 27428-27460/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read:a
2023-08-12 10:05:26.258 27428-27460/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read:s
2023-08-12 10:05:26.258 27428-27460/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read:s
2023-08-12 10:05:26.258 27428-27460/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read:R
2023-08-12 10:05:26.258 27428-27460/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read:u
2023-08-12 10:05:26.258 27428-27460/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read:l
2023-08-12 10:05:26.258 27428-27460/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read:e
2023-08-12 10:05:26.258 27428-27460/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read: 
2023-08-12 10:05:26.258 27428-27460/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read:=
2023-08-12 10:05:26.258 27428-27460/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read: 
2023-08-12 10:05:26.258 27428-27460/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read:ä
2023-08-12 10:05:26.258 27428-27460/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read:¸
2023-08-12 10:05:26.258 27428-27460/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read:­
2023-08-12 10:05:26.258 27428-27460/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read:{
2023-08-12 10:05:26.258 27428-27460/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read:\
2023-08-12 10:05:26.258 27428-27460/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read:d
2023-08-12 10:05:26.258 27428-27460/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read:\
2023-08-12 10:05:26.258 27428-27460/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read:d
2023-08-12 10:05:26.258 27428-27460/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read:"
2023-08-12 10:05:26.258 27428-27460/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read:}

上面打印的控制信息不管,可见是打印出来了classRule = 中{\d\d"}的,只不过中文是乱码。

第二步 通过InputStreamReader获取输入字符流,处理乱码问题

//读取Assets目录下的配置文件public static Properties loadFileFromAssetsNew(Context context, String filePath) {if (null == context || null == filePath || filePath.length() == 0)return null;InputStream assetFileIS = null;InputStreamReader assetFileISReader = null;Properties properties = new Properties();int readData = 0;try {assetFileIS = context.getResources().getAssets().open(filePath);
//            while ((readData = assetFileIS.read())!= -1){
//                Log.i(TAG,"read:" + (char)readData);
//            }assetFileISReader = new InputStreamReader(assetFileIS, "UTF-8");while ((readData = assetFileISReader.read())!= -1){Log.i(TAG,"read11:" + (char)readData);}} catch (IOException e) {e.printStackTrace();properties = null;} finally {try {if (null != assetFileIS) {assetFileIS.close();}if (null != assetFileISReader) {assetFileISReader.close();}} catch (IOException e) {e.printStackTrace();}}return properties;}
2023-08-12 10:06:52.827 27565-27600/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read11:c
2023-08-12 10:06:52.827 27565-27600/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read11:l
2023-08-12 10:06:52.827 27565-27600/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read11:a
2023-08-12 10:06:52.827 27565-27600/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read11:s
2023-08-12 10:06:52.827 27565-27600/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read11:s
2023-08-12 10:06:52.827 27565-27600/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read11:R
2023-08-12 10:06:52.827 27565-27600/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read11:u
2023-08-12 10:06:52.827 27565-27600/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read11:l
2023-08-12 10:06:52.827 27565-27600/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read11:e
2023-08-12 10:06:52.827 27565-27600/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read11: 
2023-08-12 10:06:52.827 27565-27600/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read11:=
2023-08-12 10:06:52.827 27565-27600/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read11: 
2023-08-12 10:06:52.827 27565-27600/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read11:2023-08-12 10:06:52.827 27565-27600/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read11:{
2023-08-12 10:06:52.827 27565-27600/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read11:\
2023-08-12 10:06:52.827 27565-27600/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read11:d
2023-08-12 10:06:52.827 27565-27600/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read11:\
2023-08-12 10:06:52.827 27565-27600/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read11:d
2023-08-12 10:06:52.827 27565-27600/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read11:"
2023-08-12 10:06:52.827 27565-27600/cn.jj.reg I/JJWorld.IniPropertiesReadUtils: read11:}

转义符依然是存在的,classRule = 中{\d\d"}

第三步 properties.load(assetFileISReader)对转义符进行了特殊处理,导致转义符失效

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

JSONObject对转义符的处理

    private void jsonRegTest() throws JSONException {String jsonStr = "{key:\"va\\lue\"}";// JSONObject对\的处理JSONObject jsonObject = new JSONObject(jsonStr);Log.i(TAG, "jsonRegTest:" + jsonObject.toString());}

在这里插入图片描述

    public JSONObject(@NonNull String json) throws JSONException {this(new JSONTokener(json));}

new JSONObject会创建一个JSONTokener。JSONTokener保留设置进来的字符串。

    public JSONTokener(String in) {// consume an optional byte order mark (BOM) if it existsif (in != null && in.startsWith("\ufeff")) {in = in.substring(1);}this.in = in;}

JSONObject(String)核心代码

    public JSONObject(@NonNull JSONTokener readFrom) throws JSONException {/** Getting the parser to populate this could get tricky. Instead, just* parse to temporary JSONObject and then steal the data from that.*/Object object = readFrom.nextValue();if (object instanceof JSONObject) {this.nameValuePairs = ((JSONObject) object).nameValuePairs;} else {throw JSON.typeMismatch(object, "JSONObject");}}
http://www.khdw.cn/news/17810.html

相关文章:

  • 企业培训网站模板抖音搜索排名
  • 成品网站是什么漂亮的网页设计
  • 外贸网站制作要求泽成seo网站排名
  • 苏宁网站开发人员微信朋友圈广告推广代理
  • 邯郸做wap网站微博付费推广有用吗
  • 长丰县建设委员会网站是哪个交易链接
  • 做自己的视频网站响应式网站模板的特点
  • 怎么开一家客服外包公司优化搜索关键词
  • 云南手机网站制作营销软文广告
  • 做网站项目后台的百度咨询
  • 建设一个网站可以采用哪几种方案低价刷赞网站推广
  • 做网站哪里买空间好企业网站seo诊断报告
  • wordpress文章自动内链厦门百度整站优化服务
  • 最专业的网站建设价格数字营销平台有哪些
  • iis 网站文件被占用郑州seo价格
  • dedecms wap网站模板下载百度上传自己个人简介
  • 旅行社网站建设的目的网站网络推广公司
  • 做网站手机端不做PC可以吗营销助手
  • 动画视频模板网站网站权重查询
  • 凡科建站公司昆明seo技术培训
  • 网站设计教程dreamweaver竞价托管推广哪家好
  • 谁有可以用的网站网络营销与传统营销的区别
  • 哪里可以上传自己的php网站sem运营是什么意思
  • 国家对地理信息网站建设的重视谷歌推广效果好吗
  • 商业网站建设试题广告优化师工资一般多少
  • 做移动网站开发迅雷磁力链bt磁力天堂
  • 邹城网站建设v556宁波seo公司网站推广
  • 嘉兴城乡建设局门户网站网站搭建免费
  • 如何修复网站中的死链网站恶意点击软件
  • 网站建设中的英文腾讯朋友圈广告怎么投放