Package org.aoju.bus.core.text.replacer
Class PrivacyReplacer
java.lang.Object
org.aoju.bus.core.text.replacer.PrivacyReplacer
- All Implemented Interfaces:
Serializable,Replacer<Object>
按值替换字符串中的变量
- Since:
- Java 17+
- Author:
- Kimi Liu
- See Also:
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescription默认值为变量前缀和后缀以及转义字符.PrivacyReplacer(Map<String, V> valueMap) 创建一个新实例并初始化它 对变量使用默认值 前缀和后缀以及转义字符PrivacyReplacer(Map<String, V> valueMap, String prefix, String suffix) 创建一个新实例并初始化它 使用默认转义字符PrivacyReplacer(Map<String, V> valueMap, String prefix, String suffix, char escape) 创建一个新实例并初始化.PrivacyReplacer(Map<String, V> valueMap, String prefix, String suffix, char escape, String delimiter) 创建一个新实例并初始化.PrivacyReplacer(Lookups<?> resolver) 创建一个新实例并初始化.PrivacyReplacer(Lookups<?> resolver, String prefix, String suffix, char escape) 创建一个新实例并初始化.PrivacyReplacer(Lookups<?> resolver, String prefix, String suffix, char escape, String delimiter) 创建一个新实例并初始化.PrivacyReplacer(Lookups<?> resolver, Matchers prefixMatcher, Matchers suffixMatcher, char escape) 创建一个新实例并初始化.PrivacyReplacer(Lookups<?> resolver, Matchers prefixMatcher, Matchers suffixMatcher, char escape, Matchers delimiter) 创建一个新实例并初始化. -
Method Summary
Modifier and TypeMethodDescriptionchar返回转义字符.获取当前使用的变量前缀匹配器Lookups<?> 获取当前使用的变量后缀匹配器booleanbooleanreplace(char[] source) 用匹配的值替换所有出现的变量 从使用给定源数组作为模板的解析器 该方法不改变数组replace(char[] source, int offset, int length) 用匹配的值替换所有出现的变量replace(CharSequence source) 用匹配的值替换所有出现的变量replace(CharSequence source, int offset, int length) 用匹配的值替换所有出现的变量用匹配的值替换所有出现的变量static <V> String替换给定源对象中出现的所有变量 它们在映射中的匹配值static <V> String将给定源对象中出现的所有变量替换 它们在映射中匹配的值 这种方法允许指定自定义变量前缀和后缀static Stringreplace(Object source, Properties value) 用匹配的变量替换给定源对象中出现的所有变量用匹配的值替换所有出现的变量 从使用给定源字符串作为模板的解析器replace(StringBuffer source) 用匹配值替换所有出现的变量 从使用给定源缓冲区作为模板的解析器replace(StringBuffer source, int offset, int length) 用匹配的值替换所有出现的变量用匹配的值替换所有出现的变量replace(TextBuilder source) 用匹配的值替换所有出现的变量replace(TextBuilder source, int offset, int length) 用匹配的值替换所有出现的变量booleanreplaceIn(StringBuffer source) 用匹配的值替换所有出现的变量booleanreplaceIn(StringBuffer source, int offset, int length) 用匹配的值替换所有出现的变量booleanreplaceIn(StringBuilder source) 用匹配的值替换所有出现的变量booleanreplaceIn(StringBuilder source, int offset, int length) 用匹配的值替换所有出现的变量booleanreplaceIn(TextBuilder source) 用匹配的值替换所有出现的变量booleanreplaceIn(TextBuilder source, int offset, int length) 用匹配的值替换所有出现的变量static StringreplaceSystemProperties(Object source) 替换给定源对象中出现的所有变量 它们在系统属性中匹配的值protected StringresolveVariable(String variableName, TextBuilder buf, int startPos, int endPos) 解析变量值的内部方法getVariableResolver(),其中变量名作为键voidsetEnableSubstitutionInVariables(boolean enableSubstitutionInVariables) voidsetEscapeChar(char escapeCharacter) 设置转义字符 如果该字符放在源中的变量引用之前,这个变量将被忽略voidsetPreserveEscapes(boolean preserveEscapes) setValueDelimiter(char valueDelimiter) setValueDelimiter(String valueDelimiter) 设置要使用的变量默认值分隔符setValueDelimiterMatcher(Matchers valueDelimiterMatcher) setVariablePrefix(char prefix) 设置要使用的变量前缀setVariablePrefix(String prefix) 设置要使用的变量前缀setVariablePrefixMatcher(Matchers prefixMatcher) 设置当前使用的变量前缀匹配器voidsetVariableResolver(Lookups<?> variableResolver) setVariableSuffix(char suffix) 设置要使用的变量后缀setVariableSuffix(String suffix) 设置要使用的变量后缀setVariableSuffixMatcher(Matchers suffixMatcher) 设置当前使用的变量后缀匹配器protected booleansubstitute(TextBuilder buffer, int offset, int length) 替换变量的内部方法
-
Field Details
-
DEFAULT_PREFIX
默认变量前缀 -
DEFAULT_SUFFIX
默认变量后缀 -
DEFAULT_VALUE_DELIMITER
默认值分隔符
-
-
Constructor Details
-
PrivacyReplacer
public PrivacyReplacer()默认值为变量前缀和后缀以及转义字符. -
PrivacyReplacer
-
PrivacyReplacer
-
PrivacyReplacer
-
PrivacyReplacer
-
PrivacyReplacer
-
PrivacyReplacer
-
PrivacyReplacer
-
PrivacyReplacer
-
PrivacyReplacer
-
-
Method Details
-
replace
-
replace
-
replace
用匹配的变量替换给定源对象中出现的所有变量- Parameters:
source- 包含要替换的变量的源文本value- 带值的属性可以为空- Returns:
- 替换操作的结果
-
replaceSystemProperties
-
replace
-
replace
用匹配的值替换所有出现的变量- Parameters:
source- 获取要替换的字符数组的源代码- Returns:
- 替换操作的结果
-
replace
-
replace
用匹配的值替换所有出现的变量 从使用给定源数组作为模板的解析器 该方法不改变数组- Parameters:
source- 获取要替换的字符数组的源代码- Returns:
- 返回替换操作的结果
-
replace
-
replace
用匹配的值替换所有出现的变量- Parameters:
source- 获取要替换的字符数组的源代码offset- 偏移数组中的起始偏移必须有效length- 要处理的数组中的长度必须是有效的- Returns:
- 替换操作的结果
-
replace
用匹配值替换所有出现的变量 从使用给定源缓冲区作为模板的解析器- Parameters:
source- 获取要替换的字符数组的源代码- Returns:
- 替换操作的结果
-
replace
用匹配的值替换所有出现的变量- Parameters:
source- 源缓冲区用作模板,没有更改offset- 偏移数组中的起始偏移必须有效length- 要处理的数组中的长度必须是有效的- Returns:
- 返回替换操作的结果
-
replace
用匹配的值替换所有出现的变量- Parameters:
source- 源缓冲区用作模板,没有更改- Returns:
- 返回替换操作的结果
-
replace
用匹配的值替换所有出现的变量- Parameters:
source- 获取要替换的字符数组的源代码offset- 偏移数组中的起始偏移必须有效length- 要处理的数组中的长度必须是有效的- Returns:
- 替换操作的结果
-
replace
用匹配的值替换所有出现的变量- Parameters:
source- 获取要替换的字符数组的源代码offset- 偏移数组中的起始偏移必须有效length- 要处理的数组中的长度必须是有效的- Returns:
- 替换操作的结果
-
replaceIn
用匹配的值替换所有出现的变量- Parameters:
source- 获取要替换的字符数组的源代码- Returns:
- 替换操作的结果
-
replaceIn
用匹配的值替换所有出现的变量- Parameters:
source- 获取要替换的字符数组的源代码offset- 偏移数组中的起始偏移必须有效length- 要处理的数组中的长度必须是有效的- Returns:
- 替换操作的结果
-
replaceIn
用匹配的值替换所有出现的变量- Parameters:
source- 获取要替换的字符数组的源代码- Returns:
- 替换操作的结果
-
replaceIn
用匹配的值替换所有出现的变量- Parameters:
source- 获取要替换的字符数组的源代码offset- 偏移数组中的起始偏移必须有效length- 要处理的数组中的长度必须是有效的- Returns:
- 替换操作的结果
-
replaceIn
用匹配的值替换所有出现的变量- Parameters:
source- 获取要替换的字符数组的源代码- Returns:
- 替换操作的结果
-
replaceIn
用匹配的值替换所有出现的变量- Parameters:
source- 获取要替换的字符数组的源代码offset- 偏移数组中的起始偏移必须有效length- 要处理的数组中的长度必须是有效的- Returns:
- 替换操作的结果
-
substitute
替换变量的内部方法- Parameters:
buffer- 要替换为的字符串生成器,而不是nulloffset- 构造器中的起始偏移量必须有效length- 要处理的构建器中的长度必须是有效的- Returns:
- true/false
-
resolveVariable
解析变量值的内部方法getVariableResolver(),其中变量名作为键- Parameters:
variableName- 变量名,而不是nullbuf- 是发生替换的缓冲区,而不是nullstartPos- 变量的起始位置,包括前缀,有效endPos- 变量的结束位置,包括后缀,有效- Returns:
- 返回变量的值, 如果变量未知, 则null
-
getEscapeChar
public char getEscapeChar()返回转义字符.- Returns:
- 用于转义变量引用的字符
-
setEscapeChar
public void setEscapeChar(char escapeCharacter) 设置转义字符 如果该字符放在源中的变量引用之前,这个变量将被忽略- Parameters:
escapeCharacter- 转义字符(0表示禁用转义)
-
getVariablePrefixMatcher
-
setVariablePrefixMatcher
设置当前使用的变量前缀匹配器- Parameters:
prefixMatcher- 前缀匹配器,null被忽略- Returns:
- this, 以启用链接
-
setVariablePrefix
设置要使用的变量前缀- Parameters:
prefix- 要使用的前缀字符- Returns:
- this, 以启用链接
-
setVariablePrefix
设置要使用的变量前缀- Parameters:
prefix- 变量的前缀,而不是null- Returns:
- this, 以启用链接
-
getVariableSuffixMatcher
-
setVariableSuffixMatcher
设置当前使用的变量后缀匹配器- Parameters:
suffixMatcher- 后缀匹配器,null被忽略- Returns:
- this, 以启用链接
-
setVariableSuffix
设置要使用的变量后缀- Parameters:
suffix- 要使用的后缀字符- Returns:
- this, 以启用链接
-
setVariableSuffix
设置要使用的变量后缀- Parameters:
suffix- 变量的后缀,而不是null- Returns:
- this, 以启用链接
-
getValueDelimiterMatcher
-
setValueDelimiterMatcher
-
setValueDelimiter
-
setValueDelimiter
设置要使用的变量默认值分隔符- Parameters:
valueDelimiter- 要使用的变量默认值分隔符字符串可以为null或空- Returns:
- this, 以启用链接
-
getVariableResolver
-
setVariableResolver
-
isEnableSubstitutionInVariables
public boolean isEnableSubstitutionInVariables() -
setEnableSubstitutionInVariables
public void setEnableSubstitutionInVariables(boolean enableSubstitutionInVariables) -
isPreserveEscapes
public boolean isPreserveEscapes() -
setPreserveEscapes
public void setPreserveEscapes(boolean preserveEscapes)
-