背景
我目前构建了一个 webApi,用于对 SharePoint 集合进行爬网。我正在通过 csom 获取图像 base64 和所需的所有属性。我正在通过我的 Controller 将所有这些值返回到我正在处理的 word.js 应用程序。
问题
我得到的字符串值是 "width=611px;height=262px;"
。正如您可能会说的那样,我希望从此字符串中获取宽度和高度并将它们分配给单独的变量。
当前方法
我之前有过关于正则表达式和子字符串的对话,众所周知,使用子字符串比正则表达式更有效。但是我想知道在这种情况下正则表达式是否会比使用子字符串更有效?
当前代码
var Widthtest = contentObject.ImageSize[x].replace("width=", '').replace("height=", '').replace("px", '').replace(";", '').trim();
当前的代码问题
- 所提供的代码示例将高度和宽度的值合并到一个字符串中。
- 所提供的代码示例是基本的,可能会给其他开发人员带来困惑
期望的结果
我的最终目标是拥有两个分别保存宽度和高度值的变量。来自格式与 "width=611px;height=262px;"
var height = height.value;
var width = width.value;
最佳答案
字符串是固定格式,您只需要知道第一个 ;
的位置 - 从中您可以根据字符串中的偏移量提取值。我个人认为没有理由使用正则表达式。
var pos = str.indexOf(";");
var w = str.substr(6, pos - 8);
var h = str.substr(pos + 8, str.length - pos - 11);
关于javascript - 无法使用子字符串从javascript获取所需的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38440453/