RE: RE: JavaScript开发笔记
You are viewing a single comment's thread from:

RE: JavaScript开发笔记

Words
15
Reading
1 min
Listen
Play
7M

正则表达式 |
参考 |
正则表达式 |

const str = "...![a](b)..."
const result = str.match(/!\[(.*?)\]\((.*?)\)/)
console.log(result); // ["![a](b)", "a", "b"]
if(result === null){
  return
}
return a[2]

//别一种写法
let reg = /\!\[.*?\)/  
//提取第一张图片格式:![]()
//以'!['开始,以')'结尾,中间任意个字符,加'?'表示惰性匹配(碰到第一个')'就结束)
// let reg = /\!\[.*?\)/g //加'g'全局匹配,提取所有的图片链接

let str= "![ipfs](https://cdn.steemitimages.com/DQ4dtGLyG3AZr9Nzmm/ipfs3.jpg)↵↵在上一篇《零代码用IPFS做文件服务器》中启动了IPFS网络,![text](https://cdn.steeTFsbjap2VtZr9Nzmm/ipfs9.jpg)至少看起来简单。[星空笔记](https://starnote.github.io)就不错!"

let a = str.match(reg)
if(a ===null){  //如查没有图片,直接返回
  return
}
console.log(1234, a)
//"![ipfs](https://cdn.steemitimages.com/DQ4dtGLyG3AZr9Nzmm/ipfs3.jpg)"
let reg2= /https:\/\/.*\w/  //从md中提取链接
let res = a[0].match(reg2)
console.log(23456, res[0])


//替换相关链接
const replaceImage = (text) => {
  // https://images.hive.blog/DQmUgQaWqyENF3TC3q7zqBprEJFkvos7oCz466SbGESfCSP/image.png
  // https://yoyo.ilark.io/DQmUgQaWqyENF3TC3q7zqBprEJFkvos7oCz466SbGESfCSP/image.png
  let reg = /https:\/\/images\.hive\.blog/g  //从md中提取链接
  if (reg != null){
    let newText = text.replace(reg, 'https://yoyo.ilark.io')
    return newText
  } else {
    return text
  }
}
@lemooljiang: 正则表达式 | 参考 | | Ecency