如何从 Angular 中的字符串中删除特定文本,打字稿

How to remove a certain text from a String in Angular, Typescript

我创建了一个简单的加密生成器,用户必须键入要加密的文本和他想用来加密文本的 public 密钥。通常 public 密钥带有 -----BEGIN RSA PUBLIC KEY----- 或 -----BEGIN PUBLIC KEY----- 并结束用 -----END PUBLIC KEY-----。这对我来说是个问题,因为我只想要密钥并删除此前缀和密钥末尾的“end public key”。我想知道的是,如何使用 angular.

中的 Typescript 从此字符串变量中删除前缀和结尾文本

我加密的方法是这样的

  public set(data, publicKey){
    let encrypt = new JsEncryptModule.JSEncrypt();
    encrypt.setPublicKey(publicKey);
    return encrypt.encrypt(data); 
    }

我用来捕获用户输入的方法是这样的:

    this.encryptService.init().then(() => {
        let result = this.encryptService.set(
            this.encryptDataForm.get("textToEncrypt").value,
            this.encryptDataForm.get("secretKey").value

你要的是string.replace()

public set(data, publicKey){
    let encrypt = new JsEncryptModule.JSEncrypt();
    encrypt.setPublicKey(publicKey.replace("-----BEGIN PUBLIC KEY-----","").replace("-----END PUBLIC KEY-----",""));
    return encrypt.encrypt(data); 
}