[]
        
首页
开发者学堂
文档
论坛
市场
生态机会
活动
立即试用
(Showing Draft Content)

ReplaceOptions

Class ReplaceOptions

java.lang.Object
com.grapecity.documents.excel.ReplaceOptions

public class ReplaceOptions extends Object
包装 IRange.replace(Object,Object,ReplaceOptions) 使用的可选参数。

使用此类可配置如何在区域中匹配和替换内容,包括搜索是否匹配整个单元格内容或其中一部分、搜索顺序、大小写敏感性、双字节匹配以及可选的搜索格式和替换格式。此包装器可在提供可选设置时保持替换 API 的一致性。


 worksheet.getRange("A1:A2").setValue(new Object[][] {
     {"Draft"},
     {"Draft plan"}
 });
 ReplaceOptions options = new ReplaceOptions();
 options.setLookAt(LookAt.Whole);
 worksheet.getRange("A1:A2").replace("Draft", "Final", options);
 
  • Constructor Details

    • ReplaceOptions

      public ReplaceOptions()
  • Method Details

    • getLookAt

      public final LookAt getLookAt()
      获取替换操作期间搜索文本的匹配方式。

      返回 LookAt 枚举值之一,用于确定IRange.replace(Object,Object,ReplaceOptions) 是匹配整个搜索文本还是匹配其中任意部分。默认值为 LookAt.Part。

      
       worksheet.getRange("A1:A3").setValue(new Object[][] {
           {"NewYork"},
           {"York"},
           {"NewYork City"}
       });
       ReplaceOptions options = new ReplaceOptions();
       options.setLookAt(LookAt.Whole);
       LookAt lookAt = options.getLookAt();
       worksheet.getRange("A1:A3").replace("NewYork", "Seattle", options);
       
      Returns:
      指定替换操作是匹配整个搜索文本还是匹配其中任意部分的 LookAt 枚举值。
    • setLookAt

      public final void setLookAt(LookAt value)
      设置替换操作期间搜索文本的匹配方式。

      使用此方法可指定替换操作是匹配整个搜索文本还是匹配其中任意部分。默认值为 LookAt.Part。

      
       worksheet.getRange("A1:A3").setValue(new Object[][] {
           {"NewYork"},
           {"York"},
           {"NewYork City"}
       });
       ReplaceOptions options = new ReplaceOptions();
       options.setLookAt(LookAt.Whole);
       worksheet.getRange("A1:A3").replace("NewYork", "Seattle", options);
       
      Parameters:
      value - 指定替换操作是匹配整个搜索文本还是匹配其中任意部分的 LookAt 值。可以为 null。
    • getSearchOrder

      public final SearchOrder getSearchOrder()
      获取搜索顺序。

      搜索顺序决定在替换操作期间如何遍历区域。例如, SearchOrder.ByRows 会先跨行搜索再移动到下一行,而 SearchOrder.ByColumns 会先沿列向下搜索再移动到下一列。

      
       worksheet.getRange("A1:B2").setValue(new Object[][] {
           {"NewYork", "Draft"},
           {"Review", "NewYork"}
       });
       ReplaceOptions options = new ReplaceOptions();
       options.setSearchOrder(SearchOrder.ByColumns);
       SearchOrder searchOrder = options.getSearchOrder();
       worksheet.getRange("A1:B2").replace("NewYork", "Seattle", options);
       
      Returns:
      表示搜索顺序的 SearchOrder 枚举值。
    • setSearchOrder

      public final void setSearchOrder(SearchOrder value)
      设置 IRange.replace(Object,Object,ReplaceOptions) 使用的搜索顺序。

      使用此方法可控制替换操作期间如何遍历区域。指定 SearchOrder.ByRows 会先跨每一行搜索再移动到下一行,或指定 SearchOrder.ByColumns 会先沿每一列向下搜索再移动到下一列。

      
       worksheet.getRange("A1:B2").setValue(new Object[][] {
           {"NewYork", "Draft"},
           {"Review", "NewYork"}
       });
       ReplaceOptions options = new ReplaceOptions();
       options.setSearchOrder(SearchOrder.ByColumns);
       worksheet.getRange("A1:B2").replace("NewYork", "Seattle", options);
       
      Parameters:
      value - 控制搜索遍历顺序的 SearchOrder 值;null 会清除当前设置。
    • getMatchCase

      public final boolean getMatchCase()
      获取搜索是否区分大小写。

      此选项控制 IRange.replace(Object,Object,ReplaceOptions)搜索文本时是否匹配字母大小写。默认值为 false。

      
       worksheet.getRange("A1:A3").setValue(new Object[][] {
           {"newyork"},
           {"NewYork"},
           {"NEWYORK"}
       });
       ReplaceOptions options = new ReplaceOptions();
       options.setMatchCase(true);
       boolean matchCase = options.getMatchCase();
       worksheet.getRange("A1:A3").replace("newyork", "Seattle", options);
       
      Returns:
      如果搜索区分大小写,则返回 true;否则返回 false。默认值为 false。
    • setMatchCase

      public final void setMatchCase(boolean value)
      设置搜索是否区分大小写。

      此选项控制 IRange.replace(Object,Object,ReplaceOptions)搜索文本时是否匹配字母大小写。默认值为 false。

      
       worksheet.getRange("A1:A3").setValue(new Object[][] {
           {"newyork"},
           {"NewYork"},
           {"NEWYORK"}
       });
       ReplaceOptions options = new ReplaceOptions();
       options.setMatchCase(true);
       worksheet.getRange("A1:A3").replace("newyork", "Seattle", options);
       
      Parameters:
      value - 如果搜索区分大小写,则为 true;否则为 false。默认值为 false。
    • getMatchByte

      public final boolean getMatchByte()
      获取替换是否仅匹配双字节字符。

      如果此属性为 true,则双字节字符仅匹配双字节字符。如果此属性为 false,则双字节字符可以匹配其单字节等效字符。

      使用 setMatchByte(boolean) 可更改IRange.replace(Object,Object,ReplaceOptions) 操作的此设置。

      
       worksheet.getRange("A1:A2").setValue(new Object[][] {
           {"A"},
           {"A"}
       });
       ReplaceOptions options = new ReplaceOptions();
       options.setMatchByte(true);
       boolean matchByte = options.getMatchByte();
       worksheet.getRange("A1:A2").replace("A", "B", options);
       
      Returns:
      如果双字节字符仅匹配双字节字符,则返回 true;如果它们可以匹配其单字节等效字符,则返回 false。
    • setMatchByte

      public final void setMatchByte(boolean value)
      设置替换是否仅匹配双字节字符。

      如果此属性为 true,则双字节字符仅匹配双字节字符。如果此属性为 false,则双字节字符可以匹配其单字节等效字符。

      
       worksheet.getRange("A1:A2").setValue(new Object[][] {
           {"A"},
           {"A"}
       });
       ReplaceOptions options = new ReplaceOptions();
       options.setMatchByte(true);
       worksheet.getRange("A1:A2").replace("A", "B", options);
       
      Parameters:
      value - 如果双字节字符仅匹配双字节字符,则为 true;如果它们可以匹配其单字节等效字符,则为 false。
    • getSearchFormat

      public final IDisplayFormat getSearchFormat()
      获取在替换操作期间用作搜索条件的显示格式。

      返回 IRange.replace(Object,Object,ReplaceOptions)用于将匹配限制为显示格式与指定格式匹配的单元格的 IDisplayFormat。默认值为 null。

      
       worksheet.getRange("A1").setValue("Draft");
       worksheet.getRange("A1").setNumberFormat("$0.00");
       ReplaceOptions options = new ReplaceOptions();
       options.setSearchFormat(worksheet.getRange("A1").getDisplayFormat());
       IDisplayFormat searchFormat = options.getSearchFormat();
       
      Returns:
      搜索格式;如果未设置格式条件,则返回 null。
    • setSearchFormat

      public final void setSearchFormat(IDisplayFormat value)
      设置替换操作的搜索格式。

      使用此方法可将 IRange.replace(Object,Object,ReplaceOptions)限制为显示格式与指定 IDisplayFormat 匹配的单元格。

      
       worksheet.getRange("A1").setValue("NewYork");
       worksheet.getRange("B1").setValue("NewYork");
       worksheet.getRange("A1").getFont().setBold(true);
       ReplaceOptions options = new ReplaceOptions();
       options.setSearchFormat(worksheet.getRange("A1").getDisplayFormat());
       worksheet.getRange("A1:B1").replace("NewYork", "Seattle", options);
       
      Parameters:
      value - 用作搜索条件的显示格式。指定 null 可清除搜索格式。
    • getReplaceFormat

      public final IDisplayFormat getReplaceFormat()
      获取在替换操作期间应用于被替换单元格的显示格式。

      返回为IRange.replace(Object,Object,ReplaceOptions) 配置的 IDisplayFormat。当此属性不为 null 时,替换操作会在匹配单元格的值被替换后,对这些单元格使用指定的显示格式。默认值为 null。

      
       worksheet.getRange("A1").setValue("Draft");
       worksheet.getRange("C1").getFont().setColor(Color.GetBlue());
       ReplaceOptions options = new ReplaceOptions();
       options.setReplaceFormat(worksheet.getRange("C1").getDisplayFormat());
       IDisplayFormat replaceFormat = options.getReplaceFormat();
       
      Returns:
      用于替换的显示格式;如果未设置替换格式,则返回 null。
    • setReplaceFormat

      public final void setReplaceFormat(IDisplayFormat value)
      设置在替换操作期间应用于被替换单元格的显示格式。

      此方法配置IRange.replace(Object,Object,ReplaceOptions) 使用的 IDisplayFormat。当此属性不为 null 时,替换操作会在匹配单元格的值被替换后,将指定的显示格式应用于这些单元格。指定 null 可移除替换格式设置。

      
       worksheet.getRange("A1").setValue("Draft");
       worksheet.getRange("C1").getFont().setColor(Color.GetBlue());
       ReplaceOptions options = new ReplaceOptions();
       options.setReplaceFormat(worksheet.getRange("C1").getDisplayFormat());
       worksheet.getRange("A1").replace("Draft", "Final", options);
       
      Parameters:
      value - 要应用于被替换单元格的显示格式。指定 null 可清除替换格式设置。