程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了正面回顾和 Safari 解决方法大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决正面回顾和 Safari 解决方法?

开发过程中遇到正面回顾和 Safari 解决方法的问题如何解决?下面主要结合日常开发的经验,给出你关于正面回顾和 Safari 解决方法的解决方法建议,希望对你解决正面回顾和 Safari 解决方法有所启发或帮助;

所以我有一个像这样的行文件......

valueA +920.32 % valueA +479.89%
valueB +886.82 % valueB +424.59%
--- insert more similar lines ---

我使用以下正则表达式只获取两个百分比并将它们存储在数组中

@H_877_5@myObject.valueA = text.match(/(?<=valueA)(?:.+?(?=%))/g);

结果就是我想要的

valueA: Array [ " +920.32 "," +479.89" ]

对此非常满意,并继续推进我的小项目,直到我尝试与我的朋友在 iPhone 上对其进行测试,但没有任何反应。我发现这是由于 safari 不支持正面的外观,所以我一直在寻找产生类似结果的东西。

通过积极的展望,我接近了,但它在结果中包含了“valueA”,我真的不想用额外的代码行删除它

(?=valueA)(?:.+?(?=%))

结果

valueA: Array [ "valueA +920.32 ","valueA +479.89" ]

我确信有一种简单的方法可以做到这一点,但我一直在使用 RegExr 并且没有运气。提前谢谢你。

解决方法

您可以使用 @H_877_5@matchAll method 中的捕获组使用此解决方法:

const s = `valueA +920.32 % valueA +479.89%
valueB +886.82 % valueB +424.59%`

var arr = [...s.matchAll(/\bvalueA\s+([^\s%]+)/g)]

arr.forEach(el => console.log( el[1] ))

,

如果这确实是数据的样子,为什么不只捕获 +、. 和数字? ([\+\d\.]+)

const text = `valueA +920.32 % valueA +479.89%`;

console.log(text.match(/([\+\d\.]+)/g))

@H_489_68@

大佬总结

以上是大佬教程为你收集整理的正面回顾和 Safari 解决方法全部内容,希望文章能够帮你解决正面回顾和 Safari 解决方法所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。