在涉及到使用 new Date("2020-05-20") 时,小程序正常,但是在ios真机上会显示为 NAN-NAN-NAN

解决办法:使用'/' 来代替 '-' 或者 '.'

let value = '2020-05-20 13:47'
let ymd =  new Date(value.replace(/-/g,'/'));//(/-/g, '/') 全局搜索-, 将其替换为/  结果:'2020/05/20 13:37'

正则表达式RegExp(regular expression)

语法:

var patt=new RegExp(pattern,modifiers);//或更简单的方法var patt=/pattern/modifiers;
  • pattern(模式) 描述了表达式的模式
  • modifiers(修饰符) 用于指定全局匹配、区分大小写的匹配和多行匹配

修饰符

i 执行对大小写不敏感的匹配。
g 执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。
m 执行多行匹配。
//对 "is" 进行全局搜索:
var str="Is this all there is?";
var patt1=/is/g;

Is this all there is?

//对 "is" 进行全局且大小写不敏感的搜索:
var str="Is this all there is?";
var patt1=/is/gi;

Is this all there is?

方括号

表达式 描述
[abc] 查找方括号之间的任何字符。
[^abc] 查找任何不在方括号之间的字符。
[0-9] 查找任何从 0 至 9 的数字。
[a-z] 查找任何从小写 a 到小写 z 的字符。
[A-Z] 查找任何从大写 A 到大写 Z 的字符。
[A-z] 查找任何从大写 A 到小写 z 的字符。
[adgk] 查找给定集合内的任何字符。
[^adgk] 查找给定集合外的任何字符。
(red|blue|green) 查找任何指定的选项。
//在字符串中对字符范围 [a-h] 进行全局搜索:
var str="Is this all there is?";
var patt1=/[a-h]/g;//输出:h,a,h,e,e//在字符串中对字符 [ah] 进行全局搜索:
var str="Is this all there is?";
var patt1=/[ah]/g;//输出:h,a,h//对不在字符范围 [a-h] 内的字符进行全局搜索:
var str="Is this all there is?";
var patt1=/[^a-h]/g;//输出:I,s, ,t,i,s, ,l,l, ,t,r, ,i,s,?//对不在字符[ah] 内的字符进行全局搜索:
var str="Is this all there is?";
var patt1=/[^ah]/g;//输出:I,s, ,t,i,s, ,l,l, ,t,e,r,e, ,i,s,?

元字符

元字符(Metacharacter)是拥有特殊含义的字符:

元字符 描述
. 查找单个字符,除了换行和行结束符。
\w 查找单词字符。
\W 查找非单词字符。
\d 查找数字。
\D 查找非数字字符。
\s 查找空白字符。
\S 查找非空白字符。
\b 匹配单词边界。
\B 匹配非单词边界。
\0 查找 NULL 字符。
\n 查找换行符。
\f 查找换页符。
\r 查找回车符。
\t 查找制表符。
\v 查找垂直制表符。
\xxx 查找以八进制数 xxx 规定的字符。
\xdd 查找以十六进制数 dd 规定的字符。
\uxxxx 查找以十六进制数 xxxx 规定的 Unicode 字符。

注意:当使用构造函数创造正则对象时,需要常规的字符转义规则(在前面加反斜杠 \)。比如,以下是等价的:

var re = new RegExp("\\w+");
var re = /\w+/;
//对字符串中的单词字符进行全局搜索:
var str="Give 100%!";
var patt1=/\w/g;//输出:G,i,v,e,1,0,0//对字符串中的非单词字符进行全局搜索:
var str="Give 100%!";
var patt1=/\W/g;//输出:,%,! (第一个,是表示匹配到了一个空格--give 和 100 之间的空格)//对数字进行全局搜索:
var str="Give 100%!";
var patt1=/\d/g;//输出:1,0,0//对字符串中的单词的开头或结尾进行 "Run" 的全局搜索:
var str="Visit Runooob";
var patt1=/\bRun/g;//输出:Run//对字符串中不位于单词开头或结尾的 "noob" 进行全局搜索:
var str="Visit Runoob";
var patt1=/\Bnoob/g;//输出:noob//对字符串中的八进制 127 (W) 进行全局搜索:
var str="Visit Runoob. Hello World!";
var patt1=/\127/g;//输出:W//对字符串中的十六进制 57 (W) 进行全局搜索:
var str="Visit Runoob. Hello World!";
var patt1=/\x57/g;//输出:W//对字符串中的十六进制 0057 (W) 进行全局搜索:
var str="Visit W3Schools. Hello World!";
var patt1=/\u0057/g;//输出:W,W

量词

量词 描述
n+

匹配任何包含至少一个 n 的字符串。

例如,/a+/ 匹配 "candy" 中的 "a","caaaaaaandy" 中所有的 "a"。

n*

匹配任何包含零个或多个 n 的字符串。

例如,/bo*/ 匹配 "A ghost booooed" 中的 "boooo","A bird warbled" 中的 "b",但是不匹配 "A goat grunted"。

n?

匹配任何包含零个或一个 n 的字符串。

例如,/e?le?/ 匹配 "angel" 中的 "el","angle" 中的 "le"。

n{X}

匹配包含 X 个 n 的序列的字符串。

例如,/a{2}/ 不匹配 "candy," 中的 "a",但是匹配 "caandy," 中的两个 "a",且匹配 "caaandy." 中的前两个 "a"。

n{X,}

X 是一个正整数。前面的模式 n 连续出现至少 X 次时匹配。

例如,/a{2,}/ 不匹配 "candy" 中的 "a",但是匹配 "caandy" 和 "caaaaaaandy." 中所有的 "a"。

n{X,Y}

X 和 Y 为正整数。前面的模式 n 连续出现至少 X 次,至多 Y 次时匹配。

例如,/a{1,3}/ 不匹配 "cndy",匹配 "candy," 中的 "a","caandy," 中的两个 "a",匹配 "caaaaaaandy" 中的前面三个 "a"。注意,当匹配 "caaaaaaandy" 时,即使原始字符串拥有更多的 "a",匹配项也是 "aaa"。

n$ 匹配任何结尾为 n 的字符串。
^n 匹配任何开头为 n 的字符串。
?=n 匹配任何其后紧接指定字符串 n 的字符串。
?!n 匹配任何其后没有紧接指定字符串 n 的字符串。
//对字符串结尾的 "is" 进行全局搜索::
var str="Is this his";
var patt1=/is$/g;//输出:is (this中的is)//对字符串开头的 "Is" 进行全局搜索:
var str="Is this his";
var patt1=/^Is/g;//输出:Is (开头的Is,注意这里区分大小写,见下一个例子)//对字符串开头的 "is" 进行全局搜索:
var str="Is this his";
var patt1=/^is/g;//输出:null//对其后紧跟 "all" 的 "is" 进行全局搜索:
var str="Is this all there is";
var patt1=/is(?= all)/g;//输出:is(this中的is) 注意看(?= all)中all前有个空格,如果没有空格的话,输出null//对其后没有紧跟 "all" 的 "is" 进行全局搜索:
var str="Is this all there is";
var patt1=/is(?! all)/gi;//输出:Is(注意有修饰符i,所以是忽略了大小写,也匹配到了这个),is(最后结尾的那个is)

RegExp 对象方法

方法 描述
exec 检索字符串中指定的值。返回找到的值,并确定其位置。
test 检索字符串中指定的值。返回 true 或 false。
toString 返回正则表达式的字符串。
//在字符串中全局搜索 "Hello" 和 "RUNOOB" 字符串:
var str="Hello world!";
//查找"Hello"
var patt=/Hello/g;
var result=patt.exec(str);
document.write("返回值: " +  result);
//查找 "RUNOOB"
patt=/RUNOOB/g;
result=patt.exec(str);
document.write("<br>返回值: " +  result);/*输出
Returned value: Hello
Returned value: null*///在字符串中全局搜索 "Hello" 和 "Runoob" 字符串:
var str="Hello world!";
//查找"Hello"
var patt=/Hello/g;
var result=patt.test(str);
document.write("返回值: " +  result);
//查找 "Runoob"
patt=/Runoob/g;
result=patt.test(str);
document.write("<br>返回值: " +  result);/*输出
返回值: true
返回值: false*///Javascript 判断是移动端浏览器还是 PC 端浏览器:
if( /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) ) {document.write("移动")
} else {document.write("PC")
}//返回正则表达式的字符串值:
var patt = new RegExp("RUNOOB", "g");
var res = patt.toString();//输出:/RUNOOB/g

支持正则表达式的 String 对象的方法

方法 描述 FF IE
search 检索与正则表达式相匹配的值。 1 4
match 找到一个或多个正则表达式的匹配。 1 4
replace 替换与正则表达式匹配的子串。 1 4
split 把字符串分割为字符串数组。 1 4
//search() 方法用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串。//如果没有找到任何匹配的子串,则返回 -1。var str="Visit Runoob!";
var n=str.search("Runoob");//输出:6//match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。var str="The rain in SPAIN stays mainly in the plain";
var n=str.match(/ain/g);//输出:ain,ain,ain//replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。var str="Visit Microsoft! Visit Microsoft!";
var n=str.replace("Microsoft","Runoob");//输出:Visit Runoob!Visit Microsoft!//全局替换的话
var str="Visit Microsoft! Visit Microsoft!";
var n=str.replace(/Microsoft/g,"Runoob");//输出:Visit Runoob!Visit Runoob!

微信小程序——new Date()显示NAN + 正则表达式相关推荐

  1. 微信小程序数据数据绑定显示NaN

    问题现象: 后端传到前端的数据显示到页面上为NaN 问题分析: NaN的意思是非数字,由此可知解析的时候将非数字解析成了数字 对数据及代码进行检查,后台返回的数据并不需要计算,而是直接绑定到页面上即可 ...

  2. 微信小程序点播插件_微信小程序 wxParse插件显示视频问题

    修改wxParse/html2json.js 文件 ,在 html2json(html, bindName)方法里 var node = { node: 'element', tag: tag, }; ...

  3. 电脑版微信小程序全屏显示方法,手机横屏方法。

    电脑版微信小程序全屏显示方法: 在app.json中加入:"resizable": true 注意要与"pages"同级,网上有许多错误方法! 手机横屏方法: ...

  4. 第21课 微信小程序视频标签显示弹幕

    第21课 微信小程序视频标签显示弹幕 效果图如下: wxml代码如下: <videosrc="http://wxsnsdy.tc.qq.com/105/20210/snsdyvideo ...

  5. uni-app分割线微信小程序端不显示

    uni-app分割线微信小程序端不显示 文章目录 uni-app分割线微信小程序端不显示 问题描述 解决方案 问题描述 做项目时,遇到一个问题: 自定义的分割线组件在web端能显示,在微信小程序端却不 ...

  6. 关于微信小程序图片不显示的问题解决方案

    关于微信小程序图片不显示的问题解决方案 经过查阅资料发现如下文档导致图片不显示: 1.本地图片是用image加载的:src="../../../images/ic_header.jpg&qu ...

  7. 微信小程序苹果手机边框显示不全解决办法

    在实际开发中,微信小程序在真机测试的时候会出现边框不全的情况 发现是边框设置为1rpx,在一些手机上会转成0.5px,只要是小于1px显示都不正常.解决办法: 1.边框的设置写法1px 2.不设置边框 ...

  8. 【简易】微信小程序日期Date的加减

    微信小程序中获取当前日期可以直接创建Date对象 JavaScript Date 对象 想实现两个日期的联动,参考文章写了简单的加减的函数:微信小程序js日期格式转化及加减 日期增加的主要代码: // ...

  9. 微信小程序控制盒子显示隐藏_微信小程序动态的显示或隐藏控件的方法(两种方法)...

    在微信小程序开发时,经常要用到一个控件会根据不同的情况和环境动态显示与隐藏这种情况,下面就来实践一把!上效果先 它的实现方法有两种, 第一种方法:单选法,就是隐藏与显示根据条件二选一,代码如下: 我是 ...

最新文章

  1. Linux操作系统下文件作用
  2. 安卓socks5代理客户端_内网Mysql代理浅析
  3. python中join的用法
  4. 外刊晨读 2018 年 年 5 月 月 15 日
  5. python比较两个字符串相似度_详解Python 字符串相似性的几种度量方法
  6. 03.openssl-获得支持加密算法
  7. JS遮罩插件 -- JqLoad
  8. Java AOP研究之how is my aop2 method called
  9. c字符串截取一部分字符串_Python如何截取一段字符串?
  10. 机房监控系统解说—开关传感器篇
  11. 【论文阅读】医疗影像图像增强
  12. iframe和response.sendRedirect()跳转到父页面的问题
  13. 190726每日一句
  14. MySQL基本知识笔记
  15. 第一个十年,我从教师转行为web程序员,下一个十年呢?
  16. Vmware15虚拟机安装win7镜像
  17. 修改assets文件内容
  18. vue项目出现错误component lists rendered with v-for should have explicit keys
  19. Pyecharts概览
  20. pymysql.err.OperationalError: (1054, “Unknown column ‘xxx‘ in ‘where clause‘“)问题解决方法

热门文章

  1. 【每日蓝桥】8、一三年省赛Java组真题“打印十字图”
  2. Matlab基本函数-ceil函数
  3. c++ 小游戏 NO6 跑酷游戏
  4. XRouter 一个轻量级的Android路由框架,基于ARouter上进行改良,优化Fragment的使用,可结合XPage使用
  5. Word2016中调节页眉内容一部分左对齐,一部分右对齐
  6. php 2038年,PHP 处理大于2038年以后的日期
  7. Windows11设置登录密码
  8. 安装java环境----血泪版
  9. 嵌入式(十三):嵌入式系统概念
  10. Qt中使用多线程并返回结果到主线程的例子