public enum

MessagePattern.ApostropheMode

extends java.lang.Enum<MessagePattern.ApostropheMode>

 java.lang.Object

↳java.lang.Enum<MessagePattern.ApostropheMode>

↳androidx.core.i18n.messageformat_icu.text.MessagePattern.ApostropheMode

Overview

Mode for when an apostrophe starts quoted literal text for MessageFormat output. The default is DOUBLE_OPTIONAL unless overridden via ICUConfig (/com/ibm/icu/ICUConfig.properties).

A pair of adjacent apostrophes always results in a single apostrophe in the output, even when the pair is between two single, text-quoting apostrophes.

The following table shows examples of desired MessageFormat.format() output with the pattern strings that yield that output.

Desired output DOUBLE_OPTIONAL DOUBLE_REQUIRED
I see {many} I see '{many}' (same)
I said {'Wow!'} I said '{''Wow!''}' (same)
I don't know I don't know OR
I don''t know
I don''t know
icu_annot::stable ICU 4.8

Summary

Enum Constants
DOUBLE_OPTIONALA literal apostrophe is represented by either a single or a double apostrophe pattern character.
DOUBLE_REQUIREDA literal apostrophe must be represented by a double apostrophe pattern character.
Methods
public static MessagePattern.ApostropheModevalueOf(java.lang.String name)

public static MessagePattern.ApostropheModevalues()

from java.lang.Enum<E>clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf
from java.lang.ObjectgetClass, notify, notifyAll, wait, wait, wait

Enum Constants

DOUBLE_OPTIONAL

A literal apostrophe is represented by either a single or a double apostrophe pattern character. Within a MessageFormat pattern, a single apostrophe only starts quoted literal text if it immediately precedes a curly brace {}, or a pipe symbol | if inside a choice format, or a pound symbol # if inside a plural format.

This is the default behavior starting with ICU 4.8. icu_annot::stable ICU 4.8

DOUBLE_REQUIRED

A literal apostrophe must be represented by a double apostrophe pattern character. A single apostrophe always starts quoted literal text.

This is the behavior of ICU 4.6 and earlier, and of the JDK. icu_annot::stable ICU 4.8

Methods

public static MessagePattern.ApostropheMode values()

public static MessagePattern.ApostropheMode valueOf(java.lang.String name)