javascript - 查找相对于字符串中给定位置左侧第一次出现的空格

标签 javascript optimization

我有一个字符串文本,说一些 Lorem Ipsum 的东西。 我想匹配相对于给定位置左侧的第一个空格。

示例:Lorem ipsum dolor sat amet...索引:10

索引 10 留下的第一个空格将是 Loremipsum 之间的空格。

这背后的故事:我想以特定长度中断文本(svg - 无自动中断)。因此,我仅测量整个文本长度(速度问题)并估计哪一个位置将进入一行。因为我想在单词边界处分割,所以我需要找到左边最近的空白。

正则表达式有什么线索可以做这样的事情吗?

//编辑:字边界不仅可以是空格,还可以是制表符或其他东西(\s)

最佳答案

你可以做这样的事情......

//your parameters are here
var originalString = "a really long string to abbreviate";
var maxLength = 15;

//the actual logic that uses your parameters
var str = originalString.substring(0, maxLength);
var lastIndex = str.lastIndexOf(" ");
str = str.substring(0, lastIndex);

更新答案以解决您的新问题:

//your parameters are here
var originalString = "a really long string to abbreviate";
var maxLength = 15;

//the actual logic that uses your parameters
var str = originalString.substring(0, maxLength);
str = str.replace(/\s+\S*$/, "")
console.log(str);

归功于@user187291 here对于那个正则表达式。给他/她投一票!

关于javascript - 查找相对于字符串中给定位置左侧第一次出现的空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33026645/

相关文章:

javascript - 在 GAE 上运行 Websocket

javascript - Mongoose JS : `TypeError: Object #<Object> has no method ' save'`: Cannot save part of a document?

performance - 'hash cons' 是什么意思?

java - 我应该使用 javac -O 选项进行优化吗?

c - GCC过度优化?自纪元开始以来的不同秒数取决于我在哪里编译

python - 加速简单的多维计数器代码

mysql - 优化 MySQL 中的 SELECT DISTINCT CONCAT 查询

javascript - 是否可以仅使用样式将一个元素相对于另一个动态调整大小的元素定位?

javascript - 如何获取每次迭代的值?

javascript - PHP 获取脚本标签之间的值