首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从多行字符串中的每一行删除前40个字符?

如何从多行字符串中的每一行删除前40个字符?
EN

Stack Overflow用户
提问于 2018-04-12 11:52:53
回答 2查看 37关注 0票数 0

我有一个字符串,我需要删除每一行前40个字符。你会有这样一条线:

9e600771af0eb709982673ca996dc632eacbd99c参/头/分支0

87499732f46076c8c054ec91b0fa71d8a720d09e参/头/分支1

bd274092d4126b023f7580aef30baf141ca8983b参/头/分支2

e27cc492e1d146b12c24ffbe0b58cfe9ea114e26参/头/分支3

但它必须是这样的

refs/heads/branch0

refs/heads/branch1

refs/heads/branch2

refs/heads/branch3

或者最终是这样:

branch0

branch1

branch2

branch3

这在JavaScript中是可能的吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-04-12 11:58:37

你可以试试RegEx /^.{40}\s/gm。这里

  1. ^.{40}将从一开始就接受任何40字符。
  2. \s,这将匹配以下空格字符。
  3. gm将在全球范围内并通过多行搜索比赛.

工作代码示例:

代码语言:javascript
复制
var str = `9e600771af0eb709982673ca996dc632eacbd99c refs/heads/branch0
87499732f46076c8c054ec91b0fa71d8a720d09e refs/heads/branch1
bd274092d4126b023f7580aef30baf141ca8983b refs/heads/branch2
e27cc492e1d146b12c24ffbe0b58cfe9ea114e26 refs/heads/branch3`;

str = str.replace(/^.{40}\s/gm,'');
console.log(str);

// And
str = str.split('\n').map(function(s){
  return s.split('/')[2];
}).join('\n');

console.log(str);

票数 1
EN

Stack Overflow用户

发布于 2018-04-12 11:58:41

用一个简单的正则表达式很好,也很快速。

代码语言:javascript
复制
let str = `9e600771af0eb709982673ca996dc632eacbd99c refs/heads/branch0
87499732f46076c8c054ec91b0fa71d8a720d09e refs/heads/branch1
bd274092d4126b023f7580aef30baf141ca8983b refs/heads/branch2
e27cc492e1d146b12c24ffbe0b58cfe9ea114e26 refs/heads/branch3`;

// replace the first 40 characters of each line with ''
let replaced = str.replace(/^.{40}/mg, '');

console.log(replaced);

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49795839

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档