The following is a regular expression that contains basically all special characters, pay attention to which characters need to be escaped
^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[~!@&%#$^*()+_{}:<>?|\"`-=[\\]\;',./ ])[a-zA-Z0-9~!@&%#$^*()+_{}:<>?|\"`-=[\\]\;',./ ]{10,20}$