Skip to content

Commit

Permalink
fix: optimize string replacement func
Browse files Browse the repository at this point in the history
  • Loading branch information
彧瑾 committed May 12, 2021
1 parent 11fbf13 commit 6d495d5
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 78 deletions.
82 changes: 7 additions & 75 deletions formatUtil.ts
Original file line number Diff line number Diff line change
Expand Up @@ -133,84 +133,16 @@ export default {
return content;
},

replaceFullNumbers(content: string): string {
' 全角数字。';
content = content.replace(//g, '0');
content = content.replace(//g, '1');
content = content.replace(//g, '2');
content = content.replace(//g, '3');
content = content.replace(//g, '4');
content = content.replace(//g, '5');
content = content.replace(//g, '6');
content = content.replace(//g, '7');
content = content.replace(//g, '8');
content = content.replace(//g, '9');
return content;
},

replaceFullChars(content: string): string {
' 全角英文和标点。';
content = content.replace(//g, 'A');
content = content.replace(//g, 'B');
content = content.replace(//g, 'C');
content = content.replace(//g, 'D');
content = content.replace(//g, 'E');
content = content.replace(//g, 'F');
content = content.replace(//g, 'G');
content = content.replace(//g, 'H');
content = content.replace(//g, 'I');
content = content.replace(//g, 'J');
content = content.replace(//g, 'K');
content = content.replace(//g, 'L');
content = content.replace(//g, 'M');
content = content.replace(//g, 'N');
content = content.replace(//g, 'O');
content = content.replace(//g, 'P');
content = content.replace(//g, 'Q');
content = content.replace(//g, 'R');
content = content.replace(//g, 'S');
content = content.replace(//g, 'T');
content = content.replace(//g, 'U');
content = content.replace(//g, 'V');
content = content.replace(//g, 'W');
content = content.replace(//g, 'X');
content = content.replace(//g, 'Y');
content = content.replace(//g, 'Z');
content = content.replace(//g, 'a');
content = content.replace(//g, 'b');
content = content.replace(//g, 'c');
content = content.replace(//g, 'd');
content = content.replace(//g, 'e');
content = content.replace(//g, 'f');
content = content.replace(//g, 'g');
content = content.replace(//g, 'h');
content = content.replace(//g, 'i');
content = content.replace(//g, 'j');
content = content.replace(//g, 'k');
content = content.replace(//g, 'l');
content = content.replace(//g, 'm');
content = content.replace(//g, 'n');
content = content.replace(//g, 'o');
content = content.replace(//g, 'p');
content = content.replace(//g, 'q');
content = content.replace(//g, 'r');
content = content.replace(//g, 's');
content = content.replace(//g, 't');
content = content.replace(//g, 'u');
content = content.replace(//g, 'v');
content = content.replace(//g, 'w');
content = content.replace(//g, 'x');
content = content.replace(//g, 'y');
content = content.replace(//g, 'z');
return content;
replaceFullNumbersAndChars(content: string): string {
// 替换全角数字 & 全角英文
// A -> A
// 0 -> 0
return content.replace(/[\uFF10-\uFF19\uFF21-\uFF5A]/g, c => String.fromCharCode(c.charCodeAt(0) - 0xfee0));
},

formatContent(content: string): string {
// 替换所有的全角数字为半角数字
content = this.replaceFullNumbers(content);

// 替换所有的全角英文和@标点 为 半角的英文和@标点
content = this.replaceFullChars(content);
// 替换所有的全角数字和字母为半角
content = this.replaceFullNumbersAndChars(content);

// 删除多余的内容(回车)
content = this.condenseContent(content);
Expand Down
4 changes: 2 additions & 2 deletions manifest.json
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
{
"id": "obsidian-pangu",
"name": "盘古",
"version": "1.2.5",
"version": "1.2.6",
"minAppVersion": "0.9.12",
"description": "自动为中英文之间插入空格,排版强迫者的福音。",
"author": "Natumsol",
"authorUrl": "https://github.com/natumsol",
"isDesktopOnly": false
"isDesktopOnly": true
}
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "obsidian-pangu",
"version": "1.2.5",
"version": "1.2.6",
"description": "A small plugin aims to add space between Chinese Characters and English Alphabet, and it is a boon for typographically compulsive people. ",
"main": "main.js",
"scripts": {
Expand Down

0 comments on commit 6d495d5

Please sign in to comment.