为了账号安全,请及时绑定邮箱和手机立即绑定

使用正则表达式提取子字符串

使用正则表达式提取子字符串

烙印99 2022-09-16 21:03:56
我正在尝试为PGN文件移动创建解析器。我想从移动1开始的总文本输入中提取一个子字符串。这是 PGN 文件的示例部分:断续器我试图通过正则表达式在使用中提取移动。substringindexOf()这是我的尝试:function extractMoves(){    const pgn = '[Date "2013.11.12"] 1.Nf3 d5 2.g3 g6'; // Sample PGN.    const firstMove = /1\.([a-h]|[NBRQK])/; // First move regex.    const moves = pgn.substring(pgn.indexOf(firstMove));    return moves;}console.log(extractMoves());这是预期的输出:1.Nf3 d5 2.g3 g6
查看完整描述

1 回答

?
ABOUTYOU

TA贡献1812条经验 获得超5个赞

indexOf不适用于正则表达式。请改用。search


它现在给出了预期的输出:


function extractMoves(){

    const pgn = '[Date "2013.11.12"] 1.Nf3 d5 2.g3 g6'

    const firstMove = /1\.([a-h]|[NBRQK])/;

    const moves = pgn.substring(pgn.search(firstMove));

    return moves;

}

console.log(extractMoves());


查看完整回答
反对 回复 2022-09-16
  • 1 回答
  • 0 关注
  • 72 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信