Maison >développement back-end >tutoriel php >Comment localiser des chaînes à partir d'une saisie de texte en PHP

Comment localiser des chaînes à partir d'une saisie de texte en PHP

PHP中文网
PHP中文网avant
2024-11-13 09:42:16923parcourir

Nous pouvons localiser et récupérer par programme le contenu d'une grande chaîne de saisie de texte en utilisant deux approches distinctes.

Comment localiser des chaînes à partir dune saisie de texte en PHP

Nous pouvons soit 1) rechercher des entrées de texte mot pour mot (équivalent à une recherche « CTRL F » dans un document ou un navigateur), ou nous pouvons 2) rechercher du texte via une expression regex.

Utiliser les exemples de code fournis ci-dessous, nous pouvons facilement profiter de deux des API gratuites qui exécutent respectivement les deux méthodes de recherche. Nous pouvons utiliser soit une API avec une clé API Cloudmersive gratuite (cela nous permettra de faire jusqu'à 800 appels API par mois sans aucun engagement supplémentaire).

Tout d'abord, installons le SDK client avec Composer :

composer require cloudmersive/cloudmersive_document_convert_api_client

Après cela, utilisons le code restant pour appeler nos fonctions.

Pour effectuer une simple correspondance de chaîne de texte, nous pouvons structurer notre demande de saisie en fonction du JSON suivant exemple :

{
  "TextContent": "string",
  "TargetString": "string"
}

Et nous pouvons appeler notre fonction en utilisant les exemples de code suivants :

<?php require_once(__DIR__ . &#39;/vendor/autoload.php&#39;);

// Configure API key authorization: Apikey
$config = SwaggerClientConfiguration::getDefaultConfiguration()->setApiKey('Apikey', 'YOUR_API_KEY');



$apiInstance = new SwaggerClientApiEditTextApi(
    
    
    new GuzzleHttpClient(),
    $config
);
$request = new SwaggerClientModelFindStringSimpleRequest(); // SwaggerClientModelFindStringSimpleRequest | Input request

try {
    $result = $apiInstance->editTextFindSimple($request);
    print_r($result);
} catch (Exception $e) {
    echo 'Exception when calling EditTextApi->editTextFindSimple: ', $e->getMessage(), PHP_EOL;
}
?>

Et pour rechercher via une expression regex, nous pouvons structurer notre demande de saisie en suivant l'exemple JSON ci-dessous :

{
  "TextContent": "string",
  "TargetRegex": "string",
  "MatchCase": true
}

Et nous pouvons appeler notre fonction en utilisant le code ci-dessous :

<?php require_once(__DIR__ . &#39;/vendor/autoload.php&#39;);

// Configure API key authorization: Apikey
$config = SwaggerClientConfiguration::getDefaultConfiguration()->setApiKey('Apikey', 'YOUR_API_KEY');



$apiInstance = new SwaggerClientApiEditTextApi(
    
    
    new GuzzleHttpClient(),
    $config
);
$request = new SwaggerClientModelFindStringRegexRequest(); // SwaggerClientModelFindStringRegexRequest | Input request

try {
    $result = $apiInstance->editTextFindRegex($request);
    print_r($result);
} catch (Exception $e) {
    echo 'Exception when calling EditTextApi->editTextFindRegex: ', $e->getMessage(), PHP_EOL;
}
?>

Nous allons obtenez un objet de réponse unique pour les deux demandes. Notre simple chaîne de texte la recherche renverra des correspondances de texte en suivant l'exemple JSON ci-dessous structure :

{
  "Successful": true,
  "Matches": [
    {
      "CharacterOffsetStart": 0,
      "CharacterOffsetEnd": 0,
      "ContainingLine": "string"
    }
  ],
  "MatchCount": 0
}

Et notre recherche d'expressions regex structurera notre réponse comme ceci :

{
  "Successful": true,
  "Matches": [
    {
      "CharacterOffsetStart": 0,
      "CharacterOffsetEnd": 0,
      "ContainingLine": "string",
      "MatchValue": "string",
      "MatchGroups": [
        "string"
      ]
    }
  ],
  "MatchCount": 0
}

C'est tout ce qu'il y a à faire !

L'une ou l'autre solution peut nous aider automatiser le processus de récupération de contenu spécifique à partir des entrées de texte dans nos applications PHP.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer