gpt4 book ai didi

regex - VSCode 代码段的多重转换

转载 作者:行者123 更新时间:2023-12-04 11:37:05 24 4
gpt4 key购买 nike

我已经设置了一些片段并按照我的意愿工作,但是我很难让一个片段起作用,我相信我需要进行多次转换?

本质上,我为我的一个组件定义了一个 TypeScript 接口(interface)。

IRadioButtonListProps.ts这是在 Interfaces 里面文件夹。 Interfaces文件夹有一个名为 Theme 的同级文件夹包含一个名为 IRadioButtonListTheme.ts 的接口(interface)

内部 IRadioButtonListProps我正在尝试删除整个界面。我目前拥有的代码段将界面 stub ,例如......

import * as React from 'react';
import IRadioButtonListPropsTheme from '../Theme/IRadioButtonListPropsTheme';

export interface IRadioButtonListPropsProps {
...props...
}

export default IRadioButtonListPropsProps;

代码段内的导入行是...
"import I${TM_FILENAME_BASE/(.*)\\..+$/$1/}Props from './Interfaces/I${TM_FILENAME_BASE/(.*)\\..+$/$1/}Props';"

我想要发生但似乎无法弄清楚的是如何同时删除“ Prop ”一词。所以,而不是 import IRadioButtonListPropsTheme...我会导入 import IRadioButtonListTheme... .

同时,我想删除所有扩展名,包括 *.abc.abc(“两个”扩展名)和 *.abc(一个简单扩展名)形式的扩展名。

这可能吗?

最佳答案

不是很清楚你是什么,但尝试:

"import ${TM_FILENAME/((\\w*)Props)*?(\\..*)/$2/}Theme from './Interfaces/${TM_FILENAME/((\\w*)Props)*?(\\..*)/$2/}Theme';"

这导致:
import IRadioButtonListTheme from './Interfaces/IRadioButtonListTheme';

来自 IRadioButtonListProps.ts
import CheckboxListTheme from './Interfaces/CheckboxListTheme';

来自 CheckboxListProps.test.tsx
[ 编辑 ] 这是一个更简单的版本,我认为它也有效:
 "import ${TM_FILENAME/(Props)*?(\\..*)//}Theme from './Interfaces/${TM_FILENAME/(Props)*?(\\..*)//}Theme';"
  • 匹配任何“ Prop ”,如果有的话,用空替换。
  • 从第一个\匹配。到文件名的结尾,替换为空。
  • 关于regex - VSCode 代码段的多重转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52769099/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com