Javascript 相当于 PHP 的 sscanf 函数?
非常基本的问题。我有一个字符串,它的格式始终为“(45.234235235,55.345345345)”,小数位数可变。我想提取这两个数字。在 PHP 中,我会使用 sscanf,但我想在 Javascript 中执行此操作。
Pretty basic question. I have a string, it will always be in the format of "(45.234235235,55.345345345)" with variable numbers of decimal places. I want to extract both of these numbers. In PHP I would sscanf, but I want to do this in Javascript.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
没有什么比
sscanf
更好的了,但是你可以使用.replace()
和.split()
:There is nothing like
sscanf
, but you can use.replace()
and.split()
:您听说过 php.js 项目吗?
http://phpjs.org/functions/sscanf:886
这是直接回答你的问题仅有的。解决问题的 JavaScript 原生方法是使用正则表达式。请参阅 Felix Kling 的回答了解正确的解决方案。
Have you heard of the php.js project?
http://phpjs.org/functions/sscanf:886
This is to directly answer your question only. The JavaScript-native way to tackle your problem would be to use regular expressions. See Felix Kling's answer for the proper solution.
为了直接回答这个问题,PHP(或 C 的)sscanf 函数的 Javascript 等效项是正则表达式子匹配。例如,如果在 C 中您有:
在 Javascript 中您有:
一般来说,使用预编译的正则表达式在一个步骤中执行解析比通过脚本执行解析要高效得多。
顺便说一下,处理外部表示(输入解析)的 Javascript 原生方法是 JSON.parse();
To directly answer the question, the Javascript equivalent of PHP's (or C's) sscanf function are regexp submatches. For example, if in C you have:
In Javascript you have:
Generally, it's far more efficient to perform parsing in a single step, natively, with a pre-compiled regexp, than doing it by script.
By the way, the Javascript-native way to address external representation (input parsing) is
JSON.parse();