草庐IT

Javascript Clean URL 正则表达式

我正在构建一个包含几个字段的CMS新闻部分,但这个问题特别需要的是“标题”和“URL引用”字段。当用户输入文章标题时,我希望Javascript/jQuery替换标题字段中的文本,并通过删除所有空格和带有破折号(-)的奇怪字符来创建“干净”的URL片段。例如Kris的FUN新文章(标题)kris-fun-new-article(URL引用)这是代码,但我似乎无法弄清楚如何替换多个空格和特殊字符$('#title').keyup(function(){varref=$(this).val().toLowerCase().replace('\','-');$('#reference').v

javascript - 大写破折号后的字母并删除破折号

如果你没有从标题中猜到,我正在尝试使用JS将CSS属性语法转换为JS语法。这意味着我想获取输入“margin-top”并将其转换为“marginTop”。我知道这可以通过几行代码和替换函数轻松完成,但我想知道正则表达式是否会有更简单、更紧凑的解决方案。所以,我的问题是,我将使用什么正则表达式来替换-\w且不带破折号且单词的第一个字母大写。如果这恰好是不可能的,那么具有替换功能的最简约的解决方案是什么?感谢您的帮助。 最佳答案 如果您搜索jQuerysource对于camelCase,您会发现这个函数:functioncamelCas

javascript - 在 JavaScript 字符串中将 '-' 替换为 '--'

这个问题在这里已经有了答案:Replacemethoddoesn'twork(4个答案)关闭4年前。我正在尝试用双破折号替换字符串中的单个破折号“-”字符。2015–09–01T16:00:00.000Ztobe2015-–09-–01T16:00:00.000Z这是我正在使用的代码,但它似乎不起作用:vartemp='2015–09–01T16:00:00.000Z'temp.replace(/-/g,'--')

javascript - 为什么 native 浏览器排序功能比快速排序慢?

我实现了快速排序,发现它比原生.sort()方法更快,hereisthePerformancetest为什么以及如何发生这种情况? 最佳答案 原因是尽管.sort()方法是原生的,但它比快速排序更通用。排序方法采用比较函数。而在快速排序的情况下,比较的种类已经有限。nativesort()方法速度较慢,以解决更多非常规比较函数。另请注意:您应该阅读underscore.js与lowdash的对比。Lowdash充满了使用for循环而不是原生函数来提高速度的方法。更新:我阅读了下面的评论并意识到我的错误。经过一番挖掘,我找到了nati

javascript - 将 ISO8601 日期转换为纪元格式(unix 时间戳)

如何使用javascript将ISO8601日期(例如20140107)转换为Unix时间戳(例如1389120125)? 最佳答案 如果您使用的是支持ECMAscript5的浏览器,Date.parse()接受ISO-8601日期字符串并返回一个以毫秒为单位的纪元值,因此只需将其除以1000即可。然而与您所说的相反,您的输入字符串不符合ISO-8601subsetdefinedinECMAscript因为它缺少各个字段之间的破折号。据我所知,破折号对于EMCAscript是强制性的(即使ISO8601本身允许无破折号或基本格式)。

javascript - THREE.LineDashedMaterial - 破折号不起作用

我无法让THREE.LineDashedMaterial在三个js中正常工作(我使用的是r73,但也刚刚尝试过r74)。改变颜色很好,但破折号似乎不起作用。这是我的例子:varsegmentCount=200;varradius=100;vargeometry=newTHREE.Geometry();varmaterial=newTHREE.LineDashedMaterial({color:0xff0000,linewidth:5,dashSize:1.0,gapSize:0.5});//newTHREE.LineBasicMaterial({color:0xFFFFFF,linew

javascript - 正则表达式用于有限的数字,无限的中间破折号?

用户可以填写电话号码。(只有数字和破折号,破折号不是强制性的)他可以有尽可能多的(中间)个破折号(-)但是数字的总数必须是10。I'vemanaged使用数字中的"-"的正面前瞻编写正则表达式:^(?=.*\-)[0-9\-]+$但是我有两个问题:破折号(在我的正则表达式中)也可以在开头和结尾,这是无效。我没有成功应用10位数字限制。附注有效示例:050-6783828050-678-38-280506783828不有效:-05067838260506783826-050678--3826p.s.2请注意这个问题被标记为正则表达式。我不是在寻找js(非正则表达式)解决方案。

javascript - 在 javascript 中更新 DynamoDB 中包含连字符或破折号 (-) 的属性

在dynamoDB中,我有一个表,其中包含用连字符连接的属性。(例如名字)现在我想使用javascript更新它们。到目前为止,这是我的代码://createUpdateExpressionandExpressionAttributeValuesletupdateExpression="set";letexpressionAttributeValues={};if(e.firstName!==null){updateExpression=updateExpression+""+'first-name'+"=:f,";expressionAttributeValues[":f"]=e.f

javascript - 在 FOCUS 上使用 Javascript 的 Auto Dash(电话号码格式)

试图实现这种格式的自动破折号XXX-XXX-XXXX这是我目前所拥有的:$('.telnumber').keyup(function(){varfoo=$(this).val().split("-").join("");//removehyphensfoo=foo.match(newRegExp('.{1,3}','g')).join("-");$(this).val(foo);});前2个block没问题,但如何限制最后一个block接受4位数字?到现在有3位还是自动破折号。我不擅长REGEX,所以任何想法都会受到赞赏。 最佳答案

javascript - 删除破折号以外的非数字字符

我需要删除破折号以外的所有非数字字符。这是我的尝试(基于:Regextogetallalphanumericfieldsexceptforcomma,dashandsinglequote):varstripped=mystring.replace(/[-0-9]+/g,'');但这行不通:-( 最佳答案 我建议:varstripped=string.replace(/[^0-9\-]/g,'');JSFiddledemo.字符类中的^(在[和]中)是NOT运算符,因此它匹配的字符不是0-9或(转义的)-字符。如对此答案的评论中所述,