import javafx.scene.control.TextField; //导入方法依赖的package包/类
@Override
public void start(final Stage stage) throws Exception
{
textField = new TextField();
textField.setId("formatted");
final MaskCharacter[] mask = MaskBuilder.newBuilder()
.appendLiteral("\\")
.appendDigit()
.appendLiteral(",")
.appendHexa()
.appendLiteral(".")
.appendLetter()
.appendLiteral("$")
.appendLetterOrDigit()
.appendLiteral("!")
.appendLowerCase()
.appendUpperCase()
.appendLiteral("U")
.appendAny()
.appendLiteral("^")
.append(1, //
c -> (c == '-' || c == '+' || c == 'M' || c == 'P'),
c -> (c == '+' || c == 'P') ? 'P' : 'M', '_')
.appendLiteral("/")
.build();
textField.setTextFormatter(new TextFormatter<>(new MaskTextFilter(textField, true, mask)));
final Scene scene = new Scene(textField, 200, 50);
stage.setScene(scene);
stage.show();
}