正则表达式
¶简介
定义
正则表达式是由普通字符(例如字符 a 到 z)以及特殊字符(称为"元字符")组成的文字模式。正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配
为什么使用正则
测试字符串内的模式
例如,可以测试输入字符串,以查看字符串内是否出现电话号码模式或信用卡号码模式。这称为数据验证
替换文本
可以使用正则表达式来识别文档中的特定文本,完全删除该文本或者用其他文本替换它
基于模式匹配从字符串中提取子字符串
可以查找文档内或输入域内特定的文本
¶语法
¶普通字符
普通字符包括没有显式指定为元字符的所有可打印和不可打印字符。这包括所有大写和小写字母、所有数字、所有标点符号和一些其他符号
字符 描述
[ABC]
匹配 [...] 中的所有字符,例如 [aeiou] 匹配字符串 "google runoob taobao" 中所有的 e o u a 字母
[^ABC]
匹配除 [...] 中的所有字符
[A-Z]/[a-z]
[A-Z] 表示一个区间 ...
游戏叙事技巧
¶1. 冲突
冲突是游戏故事的燃料,也是游戏玩法的燃料,冲突就是故事的核心。 “故事就是冲突(的集合)”
就故事而言,冲突就是:某人想要或需要某物,但其他人或者其他无造成了障碍
冲突是 想要/但 的模式
想要是角色的行动动力,“但” 是玩家所面临的障碍背后的事务,游戏的关卡和任务就是冲突所产生的障碍的实体表现
冲突是必须的,但是冲突的规模并不一定要大,更重要的是与某个角色产生了感情上的联系(共情)
¶2. 三幕结构
开始/铺陈
(故事发生的世界介绍)冲突发生之前的人物、地点、事件
为了理解故事的任何变化,我们需要对变化之前和之后的情况都有清晰的认识(前后对比)
我们要理解主角为什么要面对冲突,开始有一个特别重要的因素是诱发事件,这是介绍主角面对主要冲突的活动、事件或行动。通过这个事件让主角意识到冲突的存在
第一幕和第二幕分割点:主角开始完全致力于解决冲突开始
中间/对抗
故事的"精髓"
第二幕从主角决定致力于解决冲突开始
第二幕包括:
兑现第一幕设置的内容
铺陈第三幕最终解决冲突的解决方法
第二幕和第三幕的分割点:主角已经克服许多困难,但仍面临 ...
装机软件下载网址
装机软件下载网址
个人常用软件列表,重装系统下软件真的麻烦…
¶应用类:
TIM:https://tim.qq.com/download.html
火绒:https://www.huorong.cn/
网易云音乐:https://music.163.com/#/download
WeChat:https://weixin.qq.com/
Steam:https://store.steampowered.com/about/
Epic:https://store.epicgames.com/zh-CN/?lang=zh-CN
百度网盘:https://pan.baidu.com/download
Audacity:https://www.audacityteam.org/download/
Mkvtoolnix:https://mkvtoolnix.download/downloads.html#windows
qBittorrent:https://sourceforge.net/projects/qbittorrent/
qBittorrent-Enhanced-Edition:h ...
服务器部署Komga漫画阅读器
¶前言
本地本子存太多了,突发奇想想搭建一个在线看漫画的服务,遂找到了Komga。
下面记录一下如何在服务器的docker上部署
¶安装步骤
服务器端需要安装Java环境,至少在JDK17及以上
Centos为例:
12345678#查看云端yum库中目前支持安装的jdk软件包yum search java|grep jdk #选择版本安装jdkyum install -y java-17-openjdk#安装完成后,验证是否安装成功java -version
Komga的GitHub地址,下载最新版本的jar文件,上传到服务器即可
在 CentOS 安装
12345678910# 在komga中创建子目录mkdir config mkdir data# 创建文件cd configtouch database.sqlite# 运行komga,版本号具体而论java -jar komga-***.jar
运行
在浏览器中输入 http://服务器IP:8080,就能看到主界面了,登录即可
如果有其它服务在使用8080端口会导致安装失败,把另一个服务暂时关闭即可 ...
IEEE浮点表示(IEEE 754)
¶简介
浮点数是我们在程序里常用的数据类型,它在内存中到底是怎么样的形式存在的呢?
现代计算机中,一般都以IEEE 754标准存储浮点数,IEEE标准用: V=(-1)^s x M x 2^E 来表示一个浮点数
符号: s决定这个数是正数还是负数
尾数: M是一个二进制小数
阶码: E是对浮点数进行加权,权重是2的E次幂
符号 阶码 尾数
sign exponent fraction
对于不同长度的浮点数,阶码与小数位分配的数量不一样,如下:
精度 数符 阶码 尾数 总位数 偏移值
单精度(C中的float) 1 8 23 32 127
双精度(C中的double) 1 11 52 64 1023
对于32位的单精度浮点数,数符分配是1位,阶码分配了8位,尾数分配了是23位。
根据这个标准,我们来尝试把一个十进制的浮点数转换为IEEE 754标准表示。
¶规格 ...
VsCode配置Java环境
¶安装Java
安装最新版(最新版VsCode安装jdk1.8会弹窗警告,所以不如使用最新版)
下载地址:Java
Tips: 如果你需要运行java程序,只需安装JRE就可以了。如果你需要编写java程序,需要安装JDK。
有关两者关系也可以查看官方文档
选择对应系统的版本即可:
Compressed Archive版本是单独的JDK包
Installer版本是Java安装包,包含了Java运行程序,第一次配置Java环境最好下载这个
¶配置Java环境变量
¶1. 打开系统环境变量
方法1:选中我的电脑 --> 键盘按下 Alt + Enter --> 高级系统设置 --> 环境变量
方法2:键盘按下 win + r --> 输入 sysdm.cpl --> 高级 --> 环境变量
方法3:win10系统下,工具栏有搜索图标,点击后直接搜索"环境变量"
¶2. 设置环境变量
在 “系统变量” 中设置 3 项属性,JAVA_HOME、PATH、CLASSPATH(大小写无所谓),若已存在则点击" ...
在虚拟机中设置静态Ip(centos为例)
¶一、虚拟机设置
在菜单栏选择编辑→ 虚拟网络编辑器,打开虚拟网络编辑器对话框,选择Net网络连接方式,随意设置子网IP,点击NAT设置页面,查看子网掩码和网关,后面修改静态IP会用到。
在VMnet8模式下选择nat连接,并且取消DHCP服务。
点击NAT设置,记录下此时的网关
在系统的网络设置处,检查VMnet8的网络配置
¶二、Liunx主机设置
在root权限下输入命令 cd /etc/sysconfig/network-scripts 进入该文件夹,输入命令 ls 浏览该文件夹下的文件,找到ifcfg-en***文件,如下图所示:
vim ifcfg-en***打开文件
将BOOTPROTO="dhcp"改为BOOTPROTO=“static”、ONBOOT="no"改为ONBOOT=“yes”
并在下方添加
12345678910IPADDR=*your ip*(静态IP地址)NETMASK=*your netmask*(子网掩码,一般为255.255.255.0)GATEWAY=*your gateway*( ...
Aria2+AriaNG配置使用
Aria2是Linux下的一个下载工具,这里介绍Windows下的安装与配置,官方Aria2没有GUI界面所以配合AriaNG直接在Web界面进行操作.
AriaNg 是一个让 aria2 更容易使用的现代 Web 前端. AriaNg 使用纯 html & javascript 开发, 所以其不需要任何编译器或运行环境.
¶下载Aria2+AriaNG最新安装包
首先先在官网下载安装包
Aria2的Github地址
Aria2官方文档
AriaNG的Github地址
AriaNG官方文档
Aria2选择对应的操作系统下载压缩包即可,AriaNG解压后放在Aria2文件夹即可
AriaNg 现在提供三种版本, 标准版、单文件版和 AriaNg Native.
标准版适合在 Web 服务器中部署, 提供资源缓存和按需加载的功能.
单文件版适合本地使用, 您下载后只要在浏览器中打开唯一的 html 文件即可.
AriaNg Native 同样适合本地使用, 并且不需要使用浏览器.
¶添加配置文件
将文件解压至该目录下后,你需要再新创 4 个空文件(可以 ...
萌百黑幕CSS代码
¶萌百黑幕CSS代码
代码来自互联网,仅copy下来以方便自己使用,没错就是抄袭(bushi)
在HTML中在<head>的<style>中直接引入即可;
在MD中直接添加<style>即可
使用例:
1<span class="heimu" title="黑幕小弹框里的字">你需要隐藏的文字</span>
具体代码如下:
12345678910111213141516171819202122232425<style> /*黑幕实现*/.heimu, .heimu a, a .heimu, .heimu a.new { background-color: #252525; color: #252525; text-shadow: none;}.heimu:hover, .heimu:active,.heimu:hover .heimu, .heimu:active .heimu { color: white !important; ...
CSS笔记
.class_1{
color: red;
}
近日为实现萌娘百科上的小黑条功能,特学习一番CSS,已经实现了捏
一、CSS语法
¶1.基本属性
CSS 规则集(rule-set)由选择器和声明块组成:
h1 {color:red;font-size:14px;}
h1->选择器
color->属性
red->属性值
{color:red;}->声明
选择器指向您需要设置样式的 HTML 元素。
声明块包含一条或多条用分号分隔的声明。
每条声明都包含一个 CSS 属性名称和一个值,以冒号分隔。
多条 CSS 声明用分号分隔,声明块用花括号括起来。
¶实例1.1
在此例中,所有 <p>元素都将居中对齐,并带有红色文本颜色
12345p { color: red; text-align: center;}
¶2.CSS选择器
¶1. 分类
CSS 选择器用于“查找”(或选取)要设置样式的 HTML 元素。
我们可以将 CSS 选择器分为五类:
简单选择器(根据 ...