Queries Library
Queries LibraryRegex search and replace multiple strings in a post

Regex search and replace multiple strings in a post

This query retrieves a post, replaces all matches of a list of regex strings with a list of strings in the post's content and title, and stores the post again.

query GetPostData(
  $postId: ID!
  $searchRegex: [String!]!,
  $replaceWith: [String!]!
) {
  post(by: { id: $postId }, status: any) {
    title
    adaptedPostTitle: _strRegexReplaceMultiple(
      searchRegex: $searchRegex
      replaceWith: $replaceWith
      in: $__title
    )
      @export(as: "adaptedPostTitle")
 
    rawContent
    adaptedRawContent: _strRegexReplaceMultiple(
      searchRegex: $searchRegex
      replaceWith: $replaceWith
      in: $__rawContent
    )
      @export(as: "adaptedRawContent")
  }
}
 
mutation RegexSearchAndReplaceStringsInPost($postId: ID!)
  @depends(on: "GetPostData")
{
  updatePost(input: {
    id: $postId,
    title: $adaptedPostTitle,
    contentAs: { html: $adaptedRawContent },
  }) {
    status
    errors {
      __typename
      ...on ErrorPayload {
        message
      }
    }
    post {
      id
      title
      rawContent
    }
  }
}