首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将任何一行的第二个单词分组并分别替换它们

如何将任何一行的第二个单词分组并分别替换它们
EN

Stack Overflow用户
提问于 2021-02-14 13:28:22
回答 1查看 78关注 0票数 0

我怎样才能把以("w“"B”)开头的第一个字改为(“白色”“黑色”),把第二个单词"K“"Q”“b”改为"king""Queen""Bishop“

例如,下面是我的课文

wQ

wB

wR

wN

wP

bk

bQ

bB

bR

bN

bP

输出应该是

白王

白皇后

白主教

白鹿茸

白骑士

白色典当

&

黑王

黑皇后

黑主教

黑鲁克

黑骑士

黑色典当

直到结束。

我相信这是可能的,

任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2021-02-16 03:24:15

  1. 您可以在([wb])([KQBRNP])中使用https://regex101.com正则表达式。
  2. 单击TOOLS子面板Code Generator以生成语言中的代码。
  3. 还可以阅读replace或类似的函数,它可以帮助您通过regex修改字符串。

如果你能用你的语言做这样的事情,也许你不需要常客:

代码语言:javascript
复制
const convert = (word) => { 
  const a = {"W": "White", "B": "Black"}[word[0].toUpperCase()]
  const b = {"K": "King",  "Q": "Queen",
             "B": "Bishop","R": "Rook",
             "N": "Knight","P": "Pawn"}[word[1].toUpperCase()]
  return a + " " + b 
}

console.log(convert("wk"))
console.log(convert("wQ"))
console.log(convert("wB"))
console.log(convert("wR"))
console.log(convert("wN"))
console.log(convert("wP"))
console.log(convert("bk"))
console.log(convert("bQ"))
console.log(convert("bB"))
console.log(convert("bR"))
console.log(convert("bN"))
console.log(convert("bP"))

如果您想转换一个文件,并且安装了python

  1. 写入文件conv.py: 导入re;tokens = re.compile(r'^wb$') def转换(行):if (不是tokens.match(行)):返回行+‘n’;A= {"W":“白色”,"B":“黑色”}[line.upper()]b= {"K":“国王”,"Q":“女王”,"B":“主教”,"R":“鲁克”,"N":“骑士”,"P":“典当”}[行1.upper()]返回f'{a} {b}‘带开(’Result.txt‘,以open('test.txt')为读取器: line = reader.readline() line = [] while(line):writer.write(转换(行))line= reader.readline()
  2. 将文件的副本创建为test.txt
  3. 运行:python conv.py
  4. 你会得到result.txt

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

https://stackoverflow.com/questions/66195875

复制
相关文章

相似问题

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