高软总结
高软也在一学期的网课中结束了。本科学习过软件工程,与本学期的高级软件工程还是有很多相似之处的,但也有很多不同的地方。之前学的软件工程比较抽象,很多东西都是了解一下就过了,并没有和我们实际编码过程等产生很大的联系,高软更多的联系了实际,把抽象的化为了具体的,也更能理解软件工程的意义和作用。接下来我总结了在高软学习内容中,对我的知识储备和编码能力有最直接体现的部分。
git+vscode
首先学习了git的使用,git虽然在工作学习过程中用过,但也都是几个简单的指令,也没有详细了解git的内在结构。
vscode一直在我的软件中吃灰,老师介绍了vscode强大的扩展功能后我也开始使用这个编译器,确实有其强大之处,特别是在写前端代码时更为显著。
正则表达式
一直都知道正则表达式的厉害之处,但没有系统的学习过。高软的正则表达式十步通关对正则表达式进行了系统的介绍。以下是我个人复习进行的总结:
?word 光标之上查找word
/word 光标之下查找word
n 重复前一个搜索
N 反向重复前一个搜索
main|int|double 同时搜索这三个
igonre\c 大小写不敏感
igonre\C 大小写敏感
通配符“.”将匹配任意一个字符。通配符也可称为 dot 和 period。你可以像正则表达式中的任何其他字符一样使用通配符。例如,如果你想匹配“hug”,“huh”,“hut”和“hum”,可以使用正则表达式hu.来匹配这所有四个字符串。
通配符“+”用来查找出现一次或多次的字符,例如hahhhhh,可以使用正则表达式hah+来匹配。
通配符“**”匹配零次或多次出现的字符,使用正则表达式hah*来匹配,还可以匹配ha字符串。
通配符“?”指定可能存在的元素,也就是检查前一个元素存在与否,如正则表达式colou?r、favou?rite中通配符“?”前面的u字符存在和不存在两种情况的字符串都会匹配。
要匹配字符串"aaah"中出现 3 到 5 次的 a,你的正则表达式将是a{3,5}h
-
用方括号[and]中来定义一组你希望匹配的字符。character sets 字符集允许你通过将其放在方括号[and]中来定义一组你希望匹配的字符。例如,你要匹配"bag",“big"和"bug”,而不是"bog"。你可以创建正则表达式/b[aiu]g 来执行此操作。[aiu]是只匹配字符"a","i"或"u"的 character sets 字符集。
-
连字符“-”定义要匹配的字符范围。当你需要匹配一系列字符(例如字母表中的每个字母)时,会需要输入很多字符。幸运的是,有一个内置的功能可以使这个更简短和简单。在 character sets 字符集中,你可以使用连字符“-”定义要匹配的字符范围。例如,要匹配小写字母 a 到 e,你将使用[a-e]。使用连字符“-”匹配一系列字符并不只限于字母,它也可以匹配一系列数字。例如character sets 字符集[0-5]匹配 0 和 5 之间的所有数字,包括 0 和 5。
-
字符“^”定义不想要匹配的字符,称为negated character sets 否定字符集。要创建一个 否定字符集,你可以在方括号的开括号之后放置一个插入字符“”。例如[aeiou]排除元音的所有字符。
-
快捷方式\w 匹配字母数字[A-Za-z0-9_]。这个character sets 字符集匹配大小写字母加数字。注意,这个character sets 字符集还包括下划线字符“_”。
-
快捷方式\W 搜索\w 的相反方向。需要注意相反的模式使用大写字母。此快捷方式与[^A-Za-z0-9_]相同。
-
快捷方式\d 搜索数字字符集[0-9]。
-
快捷方式\D查找非数字字符,等于字符集[^0-9]。
默认贪婪匹配:t[a-z]*i —> titanic
懒惰匹配:t[a-z]*?i —> ti
-
插入字符“^”用于表示字符串的开头。
-
美元字符“$”表示字符串的末尾。
\s:匹配空格,还包括回车、制表符、换页和新行字符
\S:非s
\n:换行(光标到下行行首);
\r:回车(光标到本行行首);
\f:换页;
\t:水平跳格(水平制表);
\v:垂直跳格(垂直制表)。
:1,$s/word1/word2/gc 或 :%s/word1/word2/gc 从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2 字符串,且在取代前显示提示信息给用户确认 (confirm) 是否需要取代。